mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-25 01:30:38 +00:00
qtdemux: forward DISCONT from upstream to the output streams
This makes sense in DASH reverse playback, where the upstream dashdemux will download DASH segments in reverse order, but push their buffers forward to qtdemux and mark each segment start as DISCONT. This needs to be forwarded downstream to the parser/decoder, otherwise it won't work. https://bugzilla.gnome.org/show_bug.cgi?id=734443
This commit is contained in:
parent
09b1ba9491
commit
9dd48c503c
1 changed files with 11 additions and 0 deletions
|
@ -4618,6 +4618,17 @@ gst_qtdemux_chain (GstPad * sinkpad, GstObject * parent, GstBuffer * inbuf)
|
||||||
GstQTDemux *demux;
|
GstQTDemux *demux;
|
||||||
|
|
||||||
demux = GST_QTDEMUX (parent);
|
demux = GST_QTDEMUX (parent);
|
||||||
|
|
||||||
|
if (GST_BUFFER_FLAG_IS_SET (inbuf, GST_BUFFER_FLAG_DISCONT)) {
|
||||||
|
gint i;
|
||||||
|
|
||||||
|
GST_DEBUG_OBJECT (demux, "Got DISCONT, marking all streams as DISCONT");
|
||||||
|
|
||||||
|
for (i = 0; i < demux->n_streams; i++) {
|
||||||
|
demux->streams[i]->discont = TRUE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
gst_adapter_push (demux->adapter, inbuf);
|
gst_adapter_push (demux->adapter, inbuf);
|
||||||
|
|
||||||
GST_DEBUG_OBJECT (demux,
|
GST_DEBUG_OBJECT (demux,
|
||||||
|
|
Loading…
Reference in a new issue