GNOME Bugzilla – Bug 595964
[multiqueue] can hang pipeline during startup
Last modified: 2009-10-07 16:53:46 UTC
Created attachment 143705 [details] [review] Possible patch Consider a standard audio/video decodebin2/playbin2 setup with multiqueue following demuxer. Demuxer thread fills audio and video queues for a while, then audio output loop gets a chance, and prerolls. Demuxer thread then tries to push another audio buffer, and blocks there as the audio queue is full (and it need not be grown as the video queue is not empty). Then video output loop gets a chance, but the video decoder fails to setup and returns NOT_NEGOTIATED. But upstream will not get to see this error as that thread is stil stuck, and the pipeline hangs.
Looks good IMHO
looks good to me too
Created attachment 144974 [details] [review] Possible patch Same as before, but adjusted to latest HEAD.
commit e51a34985fb2a933bab46c87fe3de94e823dff9a Author: Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> Date: Wed Oct 7 18:40:46 2009 +0200 multiqueue: flush queue upon fatal flowreturn and release upstream thread