patch to fix endless looping of KDE audio notifications
phonon-backend-gstreamer (using phonon-4.6.0) is apparently unable to tell when the source queue contains no more sources. In particular, when using phonon-backend-gstreamer as the backend for playing KDE audio notifications, on login, it loops forever playing the KDE login jingle over and over as reported above. Because of this, phonon-backend-gstreamer from git is entirely unusable as a KDE audio backend. Looking at the commit, and specifically at gstreamer/mediaobject.cpp, it appears that Phonon sends and empty source when there is no next source, but in MediaObject::setNextSource() and MediaObject::handleAboutToFinish() this case is not handled and m_skippingEOS is always set to true, resulting in the current source being played over and over again. The attached patch works around this by detecting if Phonon has sent and empty (or invalid) source and then setting m_skippingEOS appropriately. This not be the proper way of doing this, but I hope at least that it sheads light on the issue. BUG:292411
parent
9d7760ca
Please register or sign in to comment