Bug 159469 - deadlock in the xine backend
Summary: deadlock in the xine backend
Status: RESOLVED FIXED
Alias: None
Product: Phonon
Classification: Frameworks and Libraries
Component: Xine backend (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: Matthias Kretz
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-03-17 15:27 UTC by Olivier Goffart
Modified: 2008-12-29 23:56 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Olivier Goffart 2008-03-17 15:27:57 UTC
Version:            (using Devel)
Installed from:    Compiled sources
Compiler:          gcc 4.3 
OS:                Linux

KNotify block beacause of a deadlock in xine or in the xine backend.

Here is the backtrace (qt symbols may be inaccurates): 


(gdb) thread apply all bt

Thread 18 (Thread 0x40800950 (LWP 7837)):
#0  0x00002ac7ac962fad in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b6572b25 in metronom_sync_loop () from /usr/lib/libxine.so.1
#2  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#3  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#4  0x0000000000000000 in ?? ()

Thread 17 (Thread 0x41001950 (LWP 7838)):
#0  0x00002ac7ac962fad in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b65894dc in _x_demux_control_headers_done () from /usr/lib/libxine.so.1
#2  0x00002ac7b6570a23 in open_internal () from /usr/lib/libxine.so.1
#3  0x00002ac7b6571736 in xine_open () from /usr/lib/libxine.so.1
#4  0x00002ac7b6302615 in Phonon::Xine::XineStream::xineOpen (this=0x1779b10, newstate=Phonon::StoppedState)
    at /home/kde4/kdesvn/kdebase/runtime/phonon/xine/xinestream.cpp:131
#5  0x00002ac7b6305d57 in Phonon::Xine::XineStream::event (this=0x1779b10, ev=0xfb0d20)
    at /home/kde4/kdesvn/kdebase/runtime/phonon/xine/xinestream.cpp:958
#6  0x00002ac7ae022203 in QApplication::notify (this=0x2ac7ac644879, receiver=0x41000330, e=0x41000324)
    at /home/ogoffart/dev/qt-src-git/src/gui/kernel/qapplication.cpp:3290
#7  0x00002ac7ae02251f in QApplication::notify (this=0x7ffffeabc800, receiver=0x1779b10, e=0xfb0d20)
    at /home/ogoffart/dev/qt-src-git/src/gui/kernel/qapplication.cpp:3343
#8  0x00002ac7af73e68b in KApplication::saveState (this=0x83fc10, sm=@0x0)
    at /home/kde4/kdesvn/kdelibs/kdeui/kernel/kapplication.cpp:741
#9  0x0000000041000cf0 in ?? ()
#10 0x000000000083fc10 in ?? ()
#11 0x0000000000842060 in ?? ()
#12 0x0000000041000ce0 in ?? ()
#13 0x0000000000000000 in ?? ()

Thread 16 (Thread 0x41802950 (LWP 7839)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b6581eb3 in ao_loop () from /usr/lib/libxine.so.1
#2  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#3  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#4  0x0000000000000000 in ?? ()
---Type <return> to continue, or q <return> to quit---

Thread 15 (Thread 0x42003950 (LWP 7840)):
#0  0x00002ac7b11b6542 in select () from /lib/libc.so.6
#1  0x00002ac7b6598464 in xine_usec_sleep () from /usr/lib/libxine.so.1
#2  0x00002ac7b657f89c in video_out_loop () from /usr/lib/libxine.so.1
#3  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#4  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 14 (Thread 0x43005950 (LWP 12289)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b6575eb2 in fifo_buffer_get () from /usr/lib/libxine.so.1
#2  0x00002ac7b657b86e in video_decoder_loop () from /usr/lib/libxine.so.1
#3  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#4  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 13 (Thread 0x43806950 (LWP 12290)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b6575eb2 in fifo_buffer_get () from /usr/lib/libxine.so.1
#2  0x00002ac7b657c83e in audio_decoder_loop () from /usr/lib/libxine.so.1
#3  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#4  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 12 (Thread 0x44007950 (LWP 12291)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b65850ab in xine_event_wait () from /usr/lib/libxine.so.1
#2  0x00002ac7b6585129 in listener_loop () from /usr/lib/libxine.so.1
#3  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#4  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 11 (Thread 0x4800f950 (LWP 12293)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
---Type <return> to continue, or q <return> to quit---
#1  0x00002ac7b6575eb2 in fifo_buffer_get () from /usr/lib/libxine.so.1
#2  0x00002ac7b657b86e in video_decoder_loop () from /usr/lib/libxine.so.1
#3  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#4  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 10 (Thread 0x4a013950 (LWP 12294)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b6575eb2 in fifo_buffer_get () from /usr/lib/libxine.so.1
#2  0x00002ac7b657c83e in audio_decoder_loop () from /usr/lib/libxine.so.1
#3  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#4  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 9 (Thread 0x4b015950 (LWP 12295)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b65850ab in xine_event_wait () from /usr/lib/libxine.so.1
#2  0x00002ac7b6585129 in listener_loop () from /usr/lib/libxine.so.1
#3  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#4  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 8 (Thread 0x52023950 (LWP 12835)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b6572e40 in metronom_handle_video_discontinuity () from /usr/lib/libxine.so.1
#2  0x00002ac7b657bec6 in video_decoder_loop () from /usr/lib/libxine.so.1
#3  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#4  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 7 (Thread 0x42804950 (LWP 12836)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b6583885 in ao_close () from /usr/lib/libxine.so.1
#2  0x00002aaaad4b109b in vorbis_dispose () from /usr/lib/xine/plugins/1.1.10/xineplug_decode_vorbis.so
#3  0x00002ac7b657820f in _x_free_audio_decoder () from /usr/lib/libxine.so.1
---Type <return> to continue, or q <return> to quit---
#4  0x00002ac7b657cb89 in audio_decoder_loop () from /usr/lib/libxine.so.1
#5  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#6  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#7  0x0000000000000000 in ?? ()

Thread 6 (Thread 0x44808950 (LWP 12837)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b65850ab in xine_event_wait () from /usr/lib/libxine.so.1
#2  0x00002ac7b6585129 in listener_loop () from /usr/lib/libxine.so.1
#3  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#4  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 5 (Thread 0x48810950 (LWP 27632)):
#0  0x00002ac7b11b6542 in select () from /lib/libc.so.6
#1  0x00002ac7b6598464 in xine_usec_sleep () from /usr/lib/libxine.so.1
#2  0x00002ac7b658920b in demux_loop () from /usr/lib/libxine.so.1
#3  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#4  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x50820950 (LWP 27633)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b6575eb2 in fifo_buffer_get () from /usr/lib/libxine.so.1
#2  0x00002ac7b657b86e in video_decoder_loop () from /usr/lib/libxine.so.1
#3  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#4  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x45009950 (LWP 27634)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b6580bc3 in ao_open () from /usr/lib/libxine.so.1
#2  0x00002aaaad4b157d in vorbis_decode_data () from /usr/lib/xine/plugins/1.1.10/xineplug_decode_vorbis.so
#3  0x00002ac7b657ce3b in audio_decoder_loop () from /usr/lib/libxine.so.1
#4  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
---Type <return> to continue, or q <return> to quit---
#5  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#6  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x4580a950 (LWP 27635)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7b65850ab in xine_event_wait () from /usr/lib/libxine.so.1
#2  0x00002ac7b6585129 in listener_loop () from /usr/lib/libxine.so.1
#3  0x00002ac7ac95efc7 in start_thread () from /lib/libpthread.so.0
#4  0x00002ac7b11bce0d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x2ac7b2e5edb0 (LWP 7819)):
#0  0x00002ac7ac962d29 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00002ac7ac4f0d5d in operator^ (a1=@0x8420d4, a2=@0x100000000)
    at /home/ogoffart/dev/qt-src-git/src/corelib/tools/qbitarray.cpp:581
#2  0x00002ac7ac4f08ba in QBitArray::count (this=0xffffffffffffffff, on=255)
    at /home/ogoffart/dev/qt-src-git/src/corelib/tools/qbitarray.cpp:147
#3  0x00002ac7b62f3e5c in Phonon::Xine::XineThread::newStream ()
    at /home/kde4/kdesvn/kdebase/runtime/phonon/xine/xinethread.cpp:62
#4  0x00002ac7b630f324 in MediaObject (this=0x64ef90, parent=<value optimized out>)
    at /home/kde4/kdesvn/kdebase/runtime/phonon/xine/mediaobject.cpp:65
#5  0x00002ac7b6315ba0 in Phonon::Xine::Backend::createObject (this=<value optimized out>, c=<value optimized out>,
    parent=0x1a417d0, args=@0x7ffffeabaf70) at /home/kde4/kdesvn/kdebase/runtime/phonon/xine/backend.cpp:103
#6  0x00002ac7afdb5ff1 in Phonon::Factory::createMediaObject (parent=0x1a417d0)
    at /home/kde4/kdesvn/kdelibs/phonon/factory.cpp:246
#7  0x00002ac7afda5e66 in Phonon::MediaObjectPrivate::createBackendObject (this=0x769b30)
    at /home/kde4/kdesvn/kdelibs/phonon/mediaobject.cpp:46
#8  0x00002ac7afda7113 in Phonon::MediaNodePrivate::backendObject (this=0x769b30)
    at /home/kde4/kdesvn/kdelibs/phonon/medianode.cpp:60
#9  0x00002ac7afda9219 in Phonon::Path::reconnect (this=0x7ffffeabb120, source=0x80, sink=0x21)
    at /home/kde4/kdesvn/kdelibs/phonon/path.cpp:150
#10 0x00002ac7afda9611 in Phonon::createPath (source=0x1a417e0, sink=0xfd75d0)
    at /home/kde4/kdesvn/kdelibs/phonon/path.cpp:384
#11 0x000000000040b33a in PlayerPool::getPlayer (this=0x75ee18)
    at /home/kde4/kdesvn/kdebase/runtime/knotify/notifybysound.cpp:57
---Type <return> to continue, or q <return> to quit---
#12 0x000000000040b926 in NotifyBySound::notify (this=0x758cf0, eventId=5076, config=<value optimized out>)
    at /home/kde4/kdesvn/kdebase/runtime/knotify/notifybysound.cpp:222
#13 0x00000000004071b7 in KNotify::emitEvent (this=0x7ffffeabc7d0, e=0x18e6cd0)
    at /home/kde4/kdesvn/kdebase/runtime/knotify/knotify.cpp:175
#14 0x000000000040745c in KNotify::event (this=0x7ffffeabc7d0, event=<value optimized out>,
    appname=<value optimized out>, contexts=<value optimized out>, text=<value optimized out>,
    pixmap=@0x7ffffeabb460, actions=@0xf79d00, winId=0) at /home/kde4/kdesvn/kdebase/runtime/knotify/knotify.cpp:125
#15 0x00000000004078f6 in KNotifyAdaptor::event (this=0x759df0, event=@0x1708b40, fromApp=@0x762180,
    contexts=<value optimized out>, text=@0xfae4b0, image=@0xff4110, actions=@0xf79d00, winId=0)
    at /home/kde4/kdesvn/kdebase/runtime/knotify/knotify.cpp:234
#16 0x0000000000408f58 in KNotifyAdaptor::qt_metacall (this=0x759df0, _c=QMetaObject::InvokeMetaMethod,
    _id=<value optimized out>, _a=0x7ffffeabb5f0) at /home/kde4/kdesvn/build/kdebase/runtime/knotify/knotify.moc:208
#17 0x00002ac7afb2071b in QDBusConnectionPrivate::deliverCall (this=0x64e0c0, object=0x759df0, msg=@0xed0180,
    metaTypes=@0x772790, slotIdx=8) at /home/ogoffart/dev/qt-src-git/src/dbus/qdbusintegrator.cpp:835
#18 0x00002ac7afb2184f in QDBusConnectionPrivate::activateCall (this=0x64e0c0, object=0x759df0, flags=273,
    msg=@0xed0180) at /home/ogoffart/dev/qt-src-git/src/dbus/qdbusintegrator.cpp:747
#19 0x00002ac7afb22acf in QDBusConnectionPrivate::activateObject (this=0x64e0c0, node=@0xed0158, msg=@0xed0180,
    pathStartPos=7) at /home/ogoffart/dev/qt-src-git/src/dbus/qdbusintegrator.cpp:1268
#20 0x00002ac7afb22d64 in QDBusActivateObjectEvent::placeMetaCall (this=0xed0110)
    at /home/ogoffart/dev/qt-src-git/src/dbus/qdbusintegrator.cpp:1381
#21 0x00002ac7ac61d85e in ~QMetaCallEvent (this=0x0)
    at /home/ogoffart/dev/qt-src-git/src/corelib/kernel/qobject.cpp:487
#22 0x00002ac7ae022203 in QApplication::notify (this=0x1800000003, receiver=0x64e0c0, e=0x2ac7afb10b16)
    at /home/ogoffart/dev/qt-src-git/src/gui/kernel/qapplication.cpp:3290
#23 0x00002ac7ae02251f in QApplication::notify (this=0x7ffffeabc800, receiver=0x7ffffeabc7d0, e=0xed0110)
    at /home/ogoffart/dev/qt-src-git/src/gui/kernel/qapplication.cpp:3343
#24 0x00002ac7af73e68b in KApplication::saveState (this=0x6581f0, sm=@0x0)
    at /home/kde4/kdesvn/kdelibs/kdeui/kernel/kapplication.cpp:741
#25 0x0000000000001000 in ?? ()
#26 0x0000000000660af8 in ?? ()
#27 0x0000000000617f00 in ?? ()
#28 0x00000000feabc3b0 in ?? ()
#29 0x0000000000000000 in ?? ()
#0  0x00002ac7ac962fad in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
Comment 1 Matthias Kretz 2008-03-17 15:40:44 UTC
On Monday 17 March 2008, Olivier Goffart wrote:
> KNotify block beacause of a deadlock in xine or in the xine backend.


The state I understand from the backtrace:
The main thread is trying to create a new stream for playback, but blocks 
because the phonon-xine internal xine thread was already blocked waiting for 
a xine_open to finish. Why the latter blocks I can't see, there could be 
multiple reasons, one of them a bug in libxine, but possibly also a problem 
with your filesystem or the soundcard. If the deadlock is reproducable then 
please enable all debug output and add it to the report:
export PHONON_DEBUG=1
export PHONON_XINE_VERBOSITY=99
Comment 2 Olivier Goffart 2008-03-19 10:43:03 UTC
It happen to me around once a day.

It's again locked right now.   What kind of debug do you need?

The end of the debug output at the moment of the deadlock

knotify(32033) KNotify::event: 5618  ref= 0
knotify(32033) NotifyBySound::notify:  going to play  "/opt/kde4/share/sounds/KDE-Window-Close.ogg"
knotify(32033)/phonon (xine backend) Phonon::Xine::AudioPort::AudioPort: use output plugin: "esd"
audio_esd_out: connecting to esd server...
audio_esd_out: can't connect to <default> ESD server: Connection refused
load_plugins: failed to load audio output plugin <esd>
knotify(32033)/phonon (xine backend) Phonon::Xine::AudioPort::AudioPort: ----------------------------------------------- audio_port created
knotify(32033)/phonon (xine backend) Phonon::Xine::AudioOutput::setOutputDevice: new audio port is invalid
knotify(32033)/phonon (xine backend) Phonon::Xine::Backend::connectNodes:
knotify(32033)/phonon (xine backend) Phonon::Xine::AudioOutput::graphChanged:
void Phonon::MediaObject::setCurrentSource(const Phonon::MediaSource&)  QUrl( "file:///opt/kde4/share/sounds/KDE-Window-Close.ogg" )
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::setMrl: "file:///opt/kde4/share/sounds/KDE-Window-Close.ogg" ,  1
void Phonon::MediaObjectPrivate::_k_currentSourceChanged(const Phonon::MediaSource&)
knotify(32033)/phonon (xine backend) Phonon::Xine::MediaObject::play:  PLAY
knotify(32033)/phonon (xine backend) Phonon::Xine::MediaObject::startToFakeBuffering:  start faking
knotify(32033)/phonon (xine backend) Phonon::Xine::MediaObject::startToFakeBuffering: fake state change: reached BufferingState after  LoadingState
knotify(32033) KNotify::event: 5619  ref= 1
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  TransitionTypeChanged
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  SetTickInterval
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  SetPrefinishMark
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  UpdateVolume
knotify(32033)/phonon (xine backend) Phonon::Xine::XineThread::event: XineThread Rewire event:
knotify(32033)/phonon (xine backend) Phonon::Xine::XineThread::event:       true  ->  true
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  UpdateVolume
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  MrlChanged
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::createStream: MediaObject is connected to  1  nodes
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::createStream: creating xine_stream with null audio port
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::createStream: creating xine_stream with null video port
xine_stream_new
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::createStream: XINE_PARAM_EARLY_FINISHED_EVENT: 1
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: calling xineOpen from MrlChanged
xine: found input plugin  : file input plugin
load_plugins: probing demux 'anx'
load_plugins: probing demux 'image'
load_plugins: probing demux 'vox'
load_plugins: probing demux 'aud'
load_plugins: probing demux 'aiff'
load_plugins: probing demux 'flac'
load_plugins: probing demux 'nsf'
load_plugins: probing demux 'realaudio'
load_plugins: probing demux 'snd'
load_plugins: probing demux 'tta'
load_plugins: probing demux 'voc'
load_plugins: probing demux 'mpeg_pes'
load_plugins: probing demux 'mpeg-ts'
load_plugins: probing demux 'mng'
load_plugins: probing demux 'ogg'
xine: found demuxer plugin: OGG demux plugin
video discontinuity #1, type is 0, disc_off 0
waiting for audio discontinuity #1
audio discontinuity #1, type is 0, disc_off 0
waiting for in_discontinuity update #1
vpts adjusted with prebuffer to 13185570856
load_plugins: plugin vorbis will be used for audio streamtype 09.
knotify(32033)/phonon (xine backend) Phonon::Xine::XineEngine::xineEventListener: XINE_EVENT_UI_CHANNELS_CHANGED
knotify(32033)/phonon (xine backend) Phonon::Xine::XineEngine::xineEventListener: XINE_EVENT_UI_CHANNELS_CHANGED
knotify(32033)/phonon (xine backend) Phonon::Xine::XineEngine::xineEventListener: XINE_EVENT_UI_CHANNELS_CHANGED
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::xineOpen: xine_open succeeded for m_mrl = file:///opt/kde4/share/sounds/KDE-Window-Close.ogg
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::getStreamInfo: available titles changed:  0
knotify(32033)/phonon (xine backend) Phonon::Xine::MediaObject::handleAvailableTitlesChanged: 0
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::getStreamInfo: available chapters changed:  0
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::getStreamInfo: available angles changed:  0
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  PlayCommand
xine_play
play_internal ...done
diff=1 (pts=1, last_pts=0)
video discontinuity #2, type is 2, disc_off 1
waiting for audio discontinuity #2
audio discontinuity #2, type is 2, disc_off 1
waiting for in_discontinuity update #2
knotify(32033)/phonon (xine backend) Phonon::Xine::MediaObject::handleStateChange:  end faking
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  UiChannelsChanged
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: current angle changed:  0
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: current chapter changed:  0
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: current title changed:  0
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  UiChannelsChanged
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  UiChannelsChanged
audio jump, diff=0
knotify(32033) KNotify::event: 5620  ref= 0
knotify(32033)/phonon (xine backend) Phonon::Xine::MediaObject::handleStateChange: reached  PlayingState  after  BufferingState
knotify(32033) KNotify::slotPluginFinished: 5621  ref= 2
knotify(32033) KNotify::event: 5621  ref= 0
knotify(32033) NotifyBySound::notify:  going to play  "/opt/kde4/share/sounds/KDE-Window-Close.ogg"
knotify(32033)/phonon (xine backend) Phonon::Xine::AudioPort::AudioPort: use output plugin: "esd"
audio_esd_out: connecting to esd server...
audio_esd_out: can't connect to <default> ESD server: Connection refused
load_plugins: failed to load audio output plugin <esd>
knotify(32033)/phonon (xine backend) Phonon::Xine::AudioPort::AudioPort: ----------------------------------------------- audio_port created
knotify(32033)/phonon (xine backend) Phonon::Xine::AudioOutput::setOutputDevice: new audio port is invalid
knotify(32033)/phonon (xine backend) Phonon::Xine::Backend::connectNodes:
knotify(32033)/phonon (xine backend) Phonon::Xine::AudioOutput::graphChanged:
void Phonon::MediaObject::setCurrentSource(const Phonon::MediaSource&)  QUrl( "file:///opt/kde4/share/sounds/KDE-Window-Close.ogg" )
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::setMrl: "file:///opt/kde4/share/sounds/KDE-Window-Close.ogg" ,  1
void Phonon::MediaObjectPrivate::_k_currentSourceChanged(const Phonon::MediaSource&)
knotify(32033)/phonon (xine backend) Phonon::Xine::MediaObject::play:  PLAY
knotify(32033)/phonon (xine backend) Phonon::Xine::MediaObject::startToFakeBuffering:  start faking
knotify(32033)/phonon (xine backend) Phonon::Xine::MediaObject::startToFakeBuffering: fake state change: reached BufferingState after  LoadingState
knotify(32033) KNotify::event: 5622  ref= 1
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  TransitionTypeChanged
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  SetTickInterval
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  SetPrefinishMark
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  UpdateVolume
knotify(32033)/phonon (xine backend) Phonon::Xine::XineThread::event: XineThread Rewire event:
knotify(32033)/phonon (xine backend) Phonon::Xine::XineThread::event:       true  ->  true
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  UpdateVolume
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  MrlChanged
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::createStream: MediaObject is connected to  1  nodes
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::createStream: creating xine_stream with null audio port
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::createStream: creating xine_stream with null video port
xine_stream_new
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::createStream: XINE_PARAM_EARLY_FINISHED_EVENT: 1
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: calling xineOpen from MrlChanged
xine: found input plugin  : file input plugin
load_plugins: probing demux 'anx'
load_plugins: probing demux 'image'
load_plugins: probing demux 'vox'
load_plugins: probing demux 'aud'
load_plugins: probing demux 'aiff'
load_plugins: probing demux 'flac'
load_plugins: probing demux 'nsf'
load_plugins: probing demux 'realaudio'
load_plugins: probing demux 'snd'
load_plugins: probing demux 'tta'
load_plugins: probing demux 'voc'
load_plugins: probing demux 'mpeg_pes'
load_plugins: probing demux 'mpeg-ts'
load_plugins: probing demux 'mng'
load_plugins: probing demux 'ogg'
xine: found demuxer plugin: OGG demux plugin
video discontinuity #1, type is 0, disc_off 0
waiting for audio discontinuity #1
audio discontinuity #1, type is 0, disc_off 0
waiting for in_discontinuity update #1
vpts adjusted with prebuffer to 13185579639
load_plugins: plugin vorbis will be used for audio streamtype 09.
knotify(32033)/phonon (xine backend) Phonon::Xine::XineEngine::xineEventListener: XINE_EVENT_UI_CHANNELS_CHANGED
knotify(32033)/phonon (xine backend) Phonon::Xine::XineEngine::xineEventListener: XINE_EVENT_UI_CHANNELS_CHANGED
knotify(32033)/phonon (xine backend) Phonon::Xine::XineEngine::xineEventListener: XINE_EVENT_UI_CHANNELS_CHANGED
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::xineOpen: xine_open succeeded for m_mrl = file:///opt/kde4/share/sounds/KDE-Window-Close.ogg
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::getStreamInfo: available titles changed:  0
knotify(32033)/phonon (xine backend) Phonon::Xine::MediaObject::handleAvailableTitlesChanged: 0
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::getStreamInfo: available chapters changed:  0
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::getStreamInfo: available angles changed:  0
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  PlayCommand
xine_play
play_internal ...done
diff=1 (pts=1, last_pts=0)
video discontinuity #2, type is 2, disc_off 1
waiting for audio discontinuity #2
audio discontinuity #2, type is 2, disc_off 1
waiting for in_discontinuity update #2
knotify(32033)/phonon (xine backend) Phonon::Xine::MediaObject::handleStateChange:  end faking
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  UiChannelsChanged
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: current angle changed:  0
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: current chapter changed:  0
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: current title changed:  0
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  UiChannelsChanged
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  UiChannelsChanged
knotify(32033) KNotify::event: 5623  ref= 0
audio jump, diff=0
video discontinuity #3, type is 0, disc_off 0
waiting for audio discontinuity #3
ao_close
audio discontinuity #3, type is 0, disc_off 0
waiting for in_discontinuity update #3
vpts adjusted with prebuffer to 13185586573
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  MediaFinished
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: MediaFinishedEvent m_useGaplessPlayback =  true
void Phonon::MediaObjectPrivate::_k_aboutToFinish()
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: ################################ Event:  GaplessSwitch
knotify(32033)/phonon (xine backend) Phonon::Xine::XineStream::event: no GaplessSwitch
knotify(32033)/phonon (xine backend) Phonon::Xine::MediaObject::handleStateChange: reached  StoppedState  after  BufferingState
ao_flush (loop running: 1)
ao_close
audio discontinuity #3, type is 0, disc_off 0
waiting for in_discontinuity update #3
ao_close
audio_out: no streams left, closing driver
video discontinuity #3, type is 0, disc_off 0
vpts adjusted with prebuffer to 13185587945
video discontinuity #3, type is 0, disc_off 0
waiting for audio discontinuity #3
audio discontinuity #225, type is 0, disc_off 0
waiting for in_discontinuity update #225
audio discontinuity #66, type is 0, disc_off 0
waiting for in_discontinuity update #66
vpts adjusted with prebuffer to 13185587953
vpts adjusted with prebuffer to 13185587954
audio discontinuity #21, type is 0, disc_off 0
waiting for in_discontinuity update #21
vpts adjusted with prebuffer to 13185587971
audio discontinuity #3, type is 0, disc_off 0
waiting for in_discontinuity update #3
vpts adjusted with prebuffer to 13185587982
knotify(32033) KNotify::slotPluginFinished: 5624  ref= 2
knotify(32033) KNotify::event: 5624  ref= 0
knotify(32033) KNotify::event: 5625  ref= 0
knotify(32033) NotifyBySound::notify:  going to play  "/opt/kde4/share/sounds/KDE-Window-Close.ogg"
knotify(32033)/phonon (xine backend) Phonon::Xine::AudioPort::AudioPort: use output plugin: "esd"
audio_esd_out: connecting to esd server...
audio_esd_out: can't connect to <default> ESD server: Connection refused
load_plugins: failed to load audio output plugin <esd>
knotify(32033)/phonon (xine backend) Phonon::Xine::AudioPort::AudioPort: ----------------------------------------------- audio_port created
knotify(32033)/phonon (xine backend) Phonon::Xine::AudioOutput::setOutputDevice: new audio port is invalid

Comment 3 Olivier Goffart 2008-04-18 17:57:29 UTC
This happens to other people as well (Bug 156236)
Comment 4 Dario Andres 2008-12-21 19:00:57 UTC
Have anyone experienced this bug again with a recent KDE version? (4.1.3 / 4.2beta2 / 4.2svn) ?  Thanks :) 
Comment 5 Matthias Kretz 2008-12-29 23:56:15 UTC
SVN commit 903113 by mkretz:

when all devices fail don't hang forever on the last broken device but rather fall back to a null output so that everything behaves properly - just without sound. The new string for better user feedback can wait.

BUG: 159469


 M  +15 -4     phonon/audiooutput.cpp  
 M  +6 -0      xine/audiooutput.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=903113