decodebin3: Don't send duplicated stream-start event
authorSeungha Yang <sh.yang@lge.com>
Fri, 9 Sep 2016 01:29:01 +0000 (10:29 +0900)
committerEdward Hervey <bilboed@bilboed.com>
Wed, 12 Jul 2017 13:55:26 +0000 (15:55 +0200)
group-id in stream-start event might be updated in
parse_chain_output_probe (). This cause duplicated stream-start
twice with identical stream-id and seq-num, but only group-id is
different. Although there is no change, stream-start event will
be followed by the first buffer.

https://bugzilla.gnome.org/show_bug.cgi?id=771088

gst/playback/gstdecodebin3.c

index 773f624..66ede8d 100644 (file)
@@ -1760,7 +1760,6 @@ get_slot_for_input (GstDecodebin3 * dbin, DecodebinInputStream * input)
 static void
 link_input_to_slot (DecodebinInputStream * input, MultiQueueSlot * slot)
 {
-  GstEvent *event;
   if (slot->input != NULL && slot->input != input) {
     GST_ERROR_OBJECT (slot->dbin,
         "Trying to link input to an already used slot");
@@ -1769,9 +1768,6 @@ link_input_to_slot (DecodebinInputStream * input, MultiQueueSlot * slot)
   gst_pad_link_full (input->srcpad, slot->sink_pad, GST_PAD_LINK_CHECK_NOTHING);
   slot->pending_stream = input->active_stream;
   slot->input = input;
-  event = gst_pad_get_sticky_event (input->srcpad, GST_EVENT_STREAM_START, 0);
-  if (event)
-    gst_pad_send_event (slot->sink_pad, event);
 }
 
 #if 0