summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrançois Laignel <fengalin@free.fr>2020-10-10 17:26:42 +0200
committerTim-Philipp Müller <tim@centricular.com>2020-10-11 10:52:13 +0100
commit8776b78eaa3f371ef40b06f5ccbb162586731e76 (patch)
tree7ca899fa1df147d0fafb32daece13c4e37dccc1c
parentdafaac5e525a3609a84166085851e84a534f1872 (diff)
downloadgstreamer-plugins-base-8776b78eaa3f371ef40b06f5ccbb162586731e76.tar.gz
decodebin3: only force streams-selected seqnum after a select-streams
The initial streams-selected message might not match any select-streams, in which case it is currently overriden with GST_SEQNUM_INVALID. Related to: - https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/601 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/863>
-rw-r--r--gst/playback/gstdecodebin3.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gst/playback/gstdecodebin3.c b/gst/playback/gstdecodebin3.c
index cfe061ac3..0bf4bf8da 100644
--- a/gst/playback/gstdecodebin3.c
+++ b/gst/playback/gstdecodebin3.c
@@ -1613,7 +1613,9 @@ is_selection_done (GstDecodebin3 * dbin)
/* We are completely active */
msg = gst_message_new_streams_selected ((GstObject *) dbin, dbin->collection);
- GST_MESSAGE_SEQNUM (msg) = dbin->select_streams_seqnum;
+ if (dbin->select_streams_seqnum != GST_SEQNUM_INVALID) {
+ gst_message_set_seqnum (msg, dbin->select_streams_seqnum);
+ }
for (tmp = dbin->output_streams; tmp; tmp = tmp->next) {
DecodebinOutputStream *output = (DecodebinOutputStream *) tmp->data;
if (output->slot) {