diff options
-rw-r--r-- | ChangeLog | 21 | ||||
-rw-r--r-- | gst-libs/gst/riff/riff-media.c | 3 | ||||
-rw-r--r-- | gst/asfdemux/gstasfmux.c | 1 | ||||
-rw-r--r-- | gst/mpegstream/gstdvddemux.c | 13 |
4 files changed, 30 insertions, 8 deletions
@@ -1,3 +1,24 @@ +2004-10-30 Jan Schmidt <thaytan@mad.scientist.com> + + * ext/dv/gstdvdec.c: (gst_dvdec_handle_sink_event): + Set EOS on the element when processing an EOS event. + * ext/speex/gstspeexdec.h: + * ext/speex/gstspeexenc.h: + Only keep a const ptr to the mode + * gst-libs/gst/riff/riff-media.c: + (gst_riff_create_audio_caps_with_data), + (gst_riff_create_audio_template_caps): + Allow WMAV3, with up to 6 channels. + * gst/asfdemux/gstasfmux.c: (gst_asfmux_request_new_pad): + Don't call gst_pad_set_event_function on a sink pad. + * gst/mpegstream/gstdvddemux.c: + (gst_dvd_demux_get_subpicture_stream), + (gst_dvd_demux_set_cur_audio), (gst_dvd_demux_set_cur_subpicture): + Copy the explicit caps that were set across to the cur_* pads, + instead of trying to use a possibly non-existent negotiated caps. + Reset the type of subpicture pads to UNKNOWN after calling init_stream, + so that the caps get set. + 2004-10-29 Martin Pitt <martin.pitt@canonical.com> Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net> diff --git a/gst-libs/gst/riff/riff-media.c b/gst-libs/gst/riff/riff-media.c index 9912a6e8df..9dbb31daf3 100644 --- a/gst-libs/gst/riff/riff-media.c +++ b/gst-libs/gst/riff/riff-media.c @@ -459,6 +459,8 @@ gst_riff_create_audio_caps_with_data (guint16 codec_id, { gint version = (codec_id - GST_RIFF_WAVE_FORMAT_WMAV1) + 1; + channels_max = 6; + block_align = TRUE; caps = gst_caps_new_simple ("audio/x-wma", @@ -613,6 +615,7 @@ gst_riff_create_audio_template_caps (void) GST_RIFF_WAVE_FORMAT_DVI_ADPCM, GST_RIFF_WAVE_FORMAT_WMAV1, GST_RIFF_WAVE_FORMAT_WMAV2, + GST_RIFF_WAVE_FORMAT_WMAV3, /* FILL ME */ 0 }; diff --git a/gst/asfdemux/gstasfmux.c b/gst/asfdemux/gstasfmux.c index 3bcc83f114..69980c054a 100644 --- a/gst/asfdemux/gstasfmux.c +++ b/gst/asfdemux/gstasfmux.c @@ -585,7 +585,6 @@ gst_asfmux_request_new_pad (GstElement * element, G_CALLBACK (gst_asfmux_pad_unlink), (gpointer) asfmux); gst_pad_set_link_function (newpad, linkfunc); gst_element_add_pad (element, newpad); - gst_pad_set_event_function (newpad, gst_asfmux_handle_event); gst_pad_set_event_mask_function (newpad, gst_asfmux_get_event_masks); return newpad; diff --git a/gst/mpegstream/gstdvddemux.c b/gst/mpegstream/gstdvddemux.c index ebcffcf20e..7f5ae473ca 100644 --- a/gst/mpegstream/gstdvddemux.c +++ b/gst/mpegstream/gstdvddemux.c @@ -645,11 +645,11 @@ gst_dvd_demux_get_subpicture_stream (GstMPEGDemux * mpeg_demux, if (str == NULL) { str = g_new0 (GstMPEGStream, 1); - str->type = GST_DVD_DEMUX_SUBP_UNKNOWN; name = g_strdup_printf ("subpicture_%02d", stream_nr); DEMUX_CLASS (dvd_demux)->init_stream (mpeg_demux, type, str, stream_nr, name, CLASS (dvd_demux)->subpicture_template); + str->type = GST_DVD_DEMUX_SUBP_UNKNOWN; g_free (name); add_pad = TRUE; @@ -886,7 +886,7 @@ gst_dvd_demux_set_cur_audio (GstDVDDemux * dvd_demux, gint stream_nr) str = mpeg_demux->audio_stream[stream_nr]; if (str != NULL) { /* (Re)set the caps in the "current" pad. */ - caps = gst_pad_get_negotiated_caps (str->pad); + caps = GST_RPAD_EXPLICIT_CAPS (str->pad); if (caps != NULL) { gst_pad_set_explicit_caps (dvd_demux->cur_audio, caps); } @@ -898,7 +898,6 @@ static void gst_dvd_demux_set_cur_subpicture (GstDVDDemux * dvd_demux, gint stream_nr) { GstMPEGStream *str; - const GstCaps *caps = NULL; g_return_if_fail (stream_nr >= -1 && stream_nr < GST_DVD_DEMUX_NUM_SUBPICTURE_STREAMS); @@ -914,11 +913,11 @@ gst_dvd_demux_set_cur_subpicture (GstDVDDemux * dvd_demux, gint stream_nr) str = dvd_demux->subpicture_stream[stream_nr]; if (str != NULL) { + GstCaps *caps = NULL; + /* (Re)set the caps in the "current" pad. */ - caps = gst_pad_get_negotiated_caps (str->pad); - if (caps != NULL) { - gst_pad_set_explicit_caps (dvd_demux->cur_subpicture, caps); - } + caps = GST_RPAD_EXPLICIT_CAPS (str->pad); + gst_pad_set_explicit_caps (dvd_demux->cur_subpicture, caps); } } |