diff options
author | Edward Hervey <edward@centricular.com> | 2021-08-27 14:32:45 +0200 |
---|---|---|
committer | Edward Hervey <bilboed@bilboed.com> | 2021-08-27 14:40:02 +0200 |
commit | 1fe15bb61cf42e4df7218277e3022a6403a7ad1b (patch) | |
tree | 82a8691e80f98e5d0e8c5697f1d7cd34de35459b | |
parent | 7db10403468fab512de45ccfaca8f0579f6ea6d9 (diff) | |
download | gstreamer-plugins-good-1fe15bb61cf42e4df7218277e3022a6403a7ad1b.tar.gz |
qtdemux: Force stream-start push when re-using EOS'd streams
When re-using streams, we *do* need to push a `stream-start` event downstream if
we previously were EOS'd. Failure to do that would never remove the EOS status
on all downstream elements and cause weird issues.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1067>
-rw-r--r-- | gst/isomp4/qtdemux.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gst/isomp4/qtdemux.c b/gst/isomp4/qtdemux.c index 6ede64bf3..15c1e7da2 100644 --- a/gst/isomp4/qtdemux.c +++ b/gst/isomp4/qtdemux.c @@ -13163,8 +13163,9 @@ qtdemux_reuse_and_configure_stream (GstQTDemux * qtdemux, newstream->pad = oldstream->pad; oldstream->pad = NULL; - /* unset new_stream to prevent stream-start event */ - newstream->new_stream = FALSE; + /* unset new_stream to prevent stream-start event, unless we are EOS in which + * case we need to force one through */ + newstream->new_stream = GST_PAD_IS_EOS (newstream->pad); return gst_qtdemux_configure_stream (qtdemux, newstream); } |