diff options
author | Sebastian Dröge <slomo@circular-chaos.org> | 2013-07-22 09:18:32 +0200 |
---|---|---|
committer | Sebastian Dröge <slomo@circular-chaos.org> | 2013-07-22 09:19:06 +0200 |
commit | e56efddd4ad64a1a01e18d681c82e19b56922605 (patch) | |
tree | 341e7a721486a05880f3bf50f247a11f133e7f0b /ext/resindvd | |
parent | 506abb06e28acf2e036c2007b7f0571b3d816b75 (diff) | |
download | gstreamer-plugins-bad-e56efddd4ad64a1a01e18d681c82e19b56922605.tar.gz |
resindvd: Send stream-start event before anything else on the mpeg demuxer srcpads
Diffstat (limited to 'ext/resindvd')
-rw-r--r-- | ext/resindvd/gstmpegdemux.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/ext/resindvd/gstmpegdemux.c b/ext/resindvd/gstmpegdemux.c index a03eab3a9..1f2497802 100644 --- a/ext/resindvd/gstmpegdemux.c +++ b/ext/resindvd/gstmpegdemux.c @@ -273,6 +273,7 @@ gst_flups_demux_create_stream (GstFluPSDemux * demux, gint id, gint stream_type) GstFluPSDemuxClass *klass = GST_FLUPS_DEMUX_GET_CLASS (demux); GstCaps *caps; GstClockTime threshold = SEGMENT_THRESHOLD; + gchar *stream_id; name = NULL; template = NULL; @@ -391,6 +392,12 @@ gst_flups_demux_create_stream (GstFluPSDemux * demux, gint id, gint stream_type) stream->pad); } + stream_id = + gst_pad_create_stream_id_printf (stream->pad, GST_ELEMENT_CAST (demux), + "%02x", id); + gst_pad_push_event (stream->pad, gst_event_new_stream_start (stream_id)); + g_free (stream_id); + gst_pad_set_caps (stream->pad, caps); GST_DEBUG_OBJECT (demux, "create pad %s, caps %" GST_PTR_FORMAT, name, caps); gst_caps_unref (caps); @@ -833,6 +840,9 @@ gst_flups_demux_sink_event (GstPad * pad, GstObject * parent, GstEvent * event) GstFluPSDemux *demux = GST_FLUPS_DEMUX (parent); switch (GST_EVENT_TYPE (event)) { + case GST_EVENT_STREAM_START: + gst_event_unref (event); + break; case GST_EVENT_FLUSH_START: gst_flups_demux_send_event (demux, event); break; |