GNOME Bugzilla – Bug 310880
Lockup in PAUSED->READY if pipeline can't preroll
Last modified: 2005-08-29 15:28:20 UTC
gst-launch fakesrc ! tee name=t t. ! fakesink t. ! fakesink The pipeline successfully reaches PLAYING after forcing the state change, but locks up on the way back down (e.g. after pressing control-C). (The trickiness about prerolling with multiple sinks should be documented in the application developer's manual.)
Created attachment 49403 [details] Backtrace of the deadlock
Created attachment 49404 [details] gstreamer log file
This pipeline goes to PLAYING fine, but if I press control-C it locks up on the way back down. gnomevfssrc location=http://gstreamer.freedesktop.org/media/small/cooldance.ogg \ ! tee name=tee \ tee. ! oggdemux name=demux \ demux. ! queue ! theoradec ! xvimagesink \ demux. ! queue ! vorbisdec ! audioconvert ! alsasink \ tee. ! queue ! filesink location=cooldance.ogg
the first pipeline hangs because -launch blocks forever without a decent timeout. fixed in CVS now
the second pipeline hangs in going to READY because tee is put to READY before all connected elements are put to READY first
actually, the sinks are put to READY just fine but the error codes were not propagated in GstQueue, Fixed in CVS now.
Everything fixored