gstreamer/gst
Myoungsun Lee 5c8ef0ea05 decodebin: Handle the preroll multi-queue size
Overview:
There are some of interleaved streams which has long-term location of audio data.
It mean the audio data is located far away more than multiqueue size.
In this case, because of multiqueue overrun, the pipeline is stopped.
To prevent hanging-like state, the decodebin needs to handle the queue size.

Caused:
The multiqueue size is not enough, the pipeline will stay being stalled status
and decodebin cannot complete to build decode chain.
In this issue file, decodebin did not receive no_more_pads signal or audio data yet.

Steps to Reproduce:
play the high-resolution(4K file) files or some streaming media(push mode).

Actual Results:
There is no audio or subtitle.
We can see only video or infinite loading.

Resolution:
Decodebin detect this problem, and add extra buffer size to multiqueue.
The multiqueue is larger than before, the next data can be pushed the downstream element.

Additional Information:
The max-preroll extra buffer size is set 8MB.
We can use total pre-roll buffer 10MB.
Only first overrun callback can handle multiqueue size.

https://bugzilla.gnome.org/show_bug.cgi?id=733235
2015-08-18 15:19:02 +03:00
..
adder docs: order and canonicalize the -sections.txt file 2015-07-03 21:16:27 +02:00
app Remove obsolete Android build cruft 2015-04-26 18:42:34 +01:00
audioconvert audioconvert: Also copy metas if their API has no tags attached to it 2015-06-29 13:06:49 +02:00
audiorate docs: update element example pipelines 2015-05-10 11:38:19 +01:00
audioresample audioresample: Also copy metas if their API has no tags attached to it 2015-06-29 13:06:59 +02:00
audiotestsrc docs: update element example pipelines 2015-05-10 11:38:19 +01:00
encoding encodebin: Add a way to enable/disabled a GstEncodingProfile 2015-06-01 10:22:31 +02:00
gio gio: don't use soon-to-be-deprecated g_cancellable_reset() 2015-05-19 18:52:41 +01:00
playback decodebin: Handle the preroll multi-queue size 2015-08-18 15:19:02 +03:00
subparse Update mailing list address from sourceforge to freedesktop 2015-07-16 17:17:16 +01:00
tcp socketsrc: add caps property 2015-07-14 16:01:10 +02:00
typefind typefindfunctions: Add typefinder for TTML+XML 2015-08-18 12:56:33 +03:00
videoconvert Update mailing list address from sourceforge to freedesktop 2015-07-16 17:17:16 +01:00
videorate videorate: fixate the pixel-aspect-ratio 2015-08-13 14:11:37 -03:00
videoscale video: improve logging 2015-07-15 12:47:42 +02:00
videotestsrc videotestsrc: Don't set DTS on buffer 2015-08-04 18:00:35 -04:00
volume docs: update element example pipelines 2015-05-10 11:38:19 +01:00
Makefile.am build: build plugin and example directories in parallel if make -jN is used 2010-03-29 00:26:59 +01:00