diff --git a/ChangeLog b/ChangeLog index e0d7f8b358..89aa47bcc9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-04-17 Sebastian Dröge + + * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): + Set the maximum number of channels for PCM and float in the correct + place to have it also used when creating the template caps. + 2007-04-17 Sebastian Dröge * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): diff --git a/gst-libs/gst/riff/riff-media.c b/gst-libs/gst/riff/riff-media.c index 2db3e63be0..7cbad42dc8 100644 --- a/gst-libs/gst/riff/riff-media.c +++ b/gst-libs/gst/riff/riff-media.c @@ -753,14 +753,14 @@ gst_riff_create_audio_caps (guint16 codec_id, switch (codec_id) { case GST_RIFF_WAVE_FORMAT_PCM: /* PCM */ + channels_max = 8; + if (strf != NULL) { gint ba = strf->blockalign; gint ch = strf->channels; gint wd = ba * 8 / ch; gint ws; - channels_max = 8; - if (strf->size > 32) { GST_WARNING ("invalid depth (%d) of pcm audio, overwriting.", strf->size); @@ -827,13 +827,13 @@ gst_riff_create_audio_caps (guint16 codec_id, break; case GST_RIFF_WAVE_FORMAT_IEEE_FLOAT: + channels_max = 8; + if (strf != NULL) { gint ba = strf->blockalign; gint ch = strf->channels; gint wd = ba * 8 / ch; - channels_max = 8; - caps = gst_caps_new_simple ("audio/x-raw-float", "endianness", G_TYPE_INT, G_LITTLE_ENDIAN, "channels", G_TYPE_INT, ch, "width", G_TYPE_INT, wd, NULL);