oggdemux: Push out STREAM_START events when needed

This commit is contained in:
Edward Hervey 2012-07-10 18:37:49 +02:00
parent a0fbf92d43
commit 25aa25be3a

View file

@ -822,6 +822,7 @@ gst_ogg_pad_submit_packet (GstOggPad * pad, ogg_packet * packet)
} }
} }
if (pad->map.caps) { if (pad->map.caps) {
gst_pad_push_event (GST_PAD (pad), gst_event_new_stream_start ());
gst_pad_set_caps (GST_PAD (pad), pad->map.caps); gst_pad_set_caps (GST_PAD (pad), pad->map.caps);
} else { } else {
GST_WARNING_OBJECT (ogg, "stream parser didn't create src pad caps"); GST_WARNING_OBJECT (ogg, "stream parser didn't create src pad caps");
@ -2647,6 +2648,8 @@ gst_ogg_demux_activate_chain (GstOggDemux * ogg, GstOggChain * chain,
pad->map.taglist = NULL; pad->map.taglist = NULL;
} }
gst_pad_push_event (GST_PAD (pad), gst_event_new_stream_start ());
/* Set headers on caps */ /* Set headers on caps */
pad->map.caps = pad->map.caps =
gst_ogg_demux_set_header_on_caps (ogg, pad->map.caps, pad->map.headers); gst_ogg_demux_set_header_on_caps (ogg, pad->map.caps, pad->map.headers);