mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-06-05 06:58:56 +00:00
qtdemux: Don't switch active streams and old streams ...
... before the old streams is not exposed yet for MSS stream. In case of DASH, newly configured streams will be exposed whenever demux got moov without delay. Meanwhile, since there is no moov box in MSS stream, the caps will act like moov. Then, there is delay for exposing new pads until demux got the first moof. So, following scenario is possible only for MSS but not for DASH, STREAM-START -> CAPS -> (configure stream but NOT EXPOSED YET) -> STREAM-START-> CAPS (configure stream again). In above scenario, we can reuse old stream without any stream reconfigure. https://bugzilla.gnome.org/show_bug.cgi?id=797239
This commit is contained in:
parent
b2876ad8a4
commit
05bd25ea35
1 changed files with 4 additions and 2 deletions
|
@ -2488,8 +2488,10 @@ gst_qtdemux_handle_sink_event (GstPad * sinkpad, GstObject * parent,
|
|||
gst_qtdemux_process_adapter (demux, TRUE);
|
||||
gst_qtdemux_reset (demux, FALSE);
|
||||
/* We expect new moov box after new stream-start event */
|
||||
gst_qtdemux_stream_concat (demux,
|
||||
demux->old_streams, demux->active_streams);
|
||||
if (demux->exposed) {
|
||||
gst_qtdemux_stream_concat (demux,
|
||||
demux->old_streams, demux->active_streams);
|
||||
}
|
||||
|
||||
goto drop;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue