Make sure set_explicit_caps() is called before adding pad.

Original commit message from CVS:
Make sure set_explicit_caps() is called before adding pad.
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop):
* gst/id3/gstid3types.c: (gst_id3types_loop):
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_syshead):
* gst/realmedia/rmdemux.c: (gst_rmdemux_add_stream):
This commit is contained in:
David Schleef 2004-02-04 21:40:49 +00:00
parent bcc73c0607
commit 553682e7f7
3 changed files with 13 additions and 4 deletions

View file

@ -1,3 +1,11 @@
2004-02-04 David Schleef <ds@schleef.org>
Make sure set_explicit_caps() is called before adding pad.
* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop):
* gst/id3/gstid3types.c: (gst_id3types_loop):
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_syshead):
* gst/realmedia/rmdemux.c: (gst_rmdemux_add_stream):
2004-02-04 Thomas Vander Stichele <thomas at apestaart dot org> 2004-02-04 Thomas Vander Stichele <thomas at apestaart dot org>
* configure.ac: * configure.ac:

View file

@ -467,13 +467,14 @@ gst_mpeg_demux_parse_syshead (GstMPEGParse *mpeg_parse, GstBuffer *buffer)
gst_pad_set_query_function (*outpad, gst_mpeg_parse_handle_src_query); gst_pad_set_query_function (*outpad, gst_mpeg_parse_handle_src_query);
if (caps && gst_caps_is_fixed (caps)) if (caps && gst_caps_is_fixed (caps))
gst_pad_use_explicit_caps (*outpad); gst_pad_use_explicit_caps (*outpad);
gst_element_add_pad (GST_ELEMENT (mpeg_demux), (*outpad));
if (caps && gst_caps_is_fixed (caps)) if (caps && gst_caps_is_fixed (caps))
gst_pad_set_explicit_caps (*outpad, caps); gst_pad_set_explicit_caps (*outpad, caps);
else if (caps) else if (caps)
gst_caps_free (caps); gst_caps_free (caps);
gst_element_add_pad (GST_ELEMENT (mpeg_demux), (*outpad));
gst_pad_set_element_private (*outpad, *outstream); gst_pad_set_element_private (*outpad, *outstream);
(*outstream)->size_bound = buf_byte_size_bound; (*outstream)->size_bound = buf_byte_size_bound;

View file

@ -512,12 +512,12 @@ void gst_rmdemux_add_stream(GstRMDemux *rmdemux, GstRMDemuxStream *stream)
if(stream->pad){ if(stream->pad){
gst_pad_use_explicit_caps (stream->pad); gst_pad_use_explicit_caps (stream->pad);
g_print("adding pad %p to rmdemux %p\n", stream->pad, rmdemux);
gst_element_add_pad(GST_ELEMENT (rmdemux), stream->pad);
GST_DEBUG ("setting caps: " GST_PTR_FORMAT, stream->caps); GST_DEBUG ("setting caps: " GST_PTR_FORMAT, stream->caps);
gst_pad_set_explicit_caps(stream->pad, stream->caps); gst_pad_set_explicit_caps(stream->pad, stream->caps);
GST_DEBUG ("adding pad %p to rmdemux %p", stream->pad, rmdemux);
gst_element_add_pad(GST_ELEMENT (rmdemux), stream->pad);
} }
} }