diff options
author | Edward Hervey <edward@centricular.com> | 2021-08-27 14:32:45 +0200 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.com> | 2021-08-28 12:12:53 +0100 |
commit | 250b844fba1f7c5e4aba5be7cf1e69707ddc3f6c (patch) | |
tree | 6119bca79783d33c930678a1438e514ba8bebb4f | |
parent | 22a038882e8758de0b6122db2a8d477316d77de2 (diff) | |
download | gstreamer-plugins-good-250b844fba1f7c5e4aba5be7cf1e69707ddc3f6c.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/1068>
-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 d88034116..040a5de16 100644 --- a/gst/isomp4/qtdemux.c +++ b/gst/isomp4/qtdemux.c @@ -12957,8 +12957,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); } |