GNOME Bugzilla – Bug 442024
regression in playbin buffering
Last modified: 2007-05-29 13:42:01 UTC
Playbin decides to activate the current streams when a no_more_pads was received from a demuxer or when the internal queues fill up. In the case buffering is enabled and the internal queues fill up, no 100% buffering message is posted and the app stays in the PAUSED state. The signal that should finish the buffering (the new pushing signal) is never signalled because the queue srcpads are not yet linked. This results in a deadlock while buffering.
Created attachment 88993 [details] [review] patch to fix the problem This patch stops buffering when the queues fill up.
* gst/playback/gstplaybasebin.c: (queue_overrun), (no_more_pads_full): Stop buffering when the group is commited because the queues filled up. Fixes #442024.