qtdemux: Don't switch active streams and old streams ...
authorSeungha Yang <seungha.yang@navercorp.com>
Sun, 7 Oct 2018 11:07:39 +0000 (20:07 +0900)
committerEdward Hervey <bilboed@bilboed.com>
Fri, 19 Oct 2018 12:44:43 +0000 (14:44 +0200)
commit05bd25ea351b17e6c2f0ea71438bb2bca57ade07
tree8d6662ba3ca80d3673d07171261b74c6c24bf08b
parentb2876ad8a4f7b9f1cdf499ab40c4b73f841c9031
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
gst/isomp4/qtdemux.c