From 6382c57f0e4287ad8875897bce394c718259f7a3 Mon Sep 17 00:00:00 2001 From: "Ronald S. Bultje" Date: Thu, 18 Dec 2003 09:31:50 +0000 Subject: Sorry Dave... Add mpegversion=1 to mp3 caps everywhere so that the autoplugger uses mad and not faad for mp3 decoding... Original commit message from CVS: Sorry Dave... Add mpegversion=1 to mp3 caps everywhere so that the autoplugger uses mad and not faad for mp3 decoding. This should fix mp3 playback. --- ext/faad/gstfaad.c | 1 + ext/mplex/gstmplex.cc | 1 + ext/shout/gstshout.c | 1 + gst-libs/gst/riff/riff-media.c | 5 +++-- gst/mpeg1sys/gstmpeg1systemencode.c | 4 +++- gst/qtdemux/qtdemux.c | 3 +++ 6 files changed, 12 insertions(+), 3 deletions(-) diff --git a/ext/faad/gstfaad.c b/ext/faad/gstfaad.c index 56f38a4e..3be8fd92 100644 --- a/ext/faad/gstfaad.c +++ b/ext/faad/gstfaad.c @@ -404,6 +404,7 @@ gst_faad_chain (GstPad *pad, gst_buffer_unref (buf); return; } + if (info.samplerate != faad->samplerate || info.channels != faad->channels) { faad->samplerate = info.samplerate; diff --git a/ext/mplex/gstmplex.cc b/ext/mplex/gstmplex.cc index ecf0ac2e..c63d1801 100644 --- a/ext/mplex/gstmplex.cc +++ b/ext/mplex/gstmplex.cc @@ -87,6 +87,7 @@ GST_PAD_TEMPLATE_FACTORY (audio_sink_factory, GST_CAPS_NEW ( "sink_audio", "audio/mpeg", + "mpegversion", GST_PROPS_INT (1), "layer", GST_PROPS_INT_RANGE (1, 3) ) ) diff --git a/ext/shout/gstshout.c b/ext/shout/gstshout.c index 2af0bc99..144835fe 100644 --- a/ext/shout/gstshout.c +++ b/ext/shout/gstshout.c @@ -77,6 +77,7 @@ sink_template_factory (void) "icecastsend_sink", "audio/mpeg", gst_props_new ( + "mpegversion", GST_PROPS_INT (1), "layer", GST_PROPS_INT_RANGE (1, 3), NULL )), diff --git a/gst-libs/gst/riff/riff-media.c b/gst-libs/gst/riff/riff-media.c index ef617e10..eeb6fd63 100644 --- a/gst-libs/gst/riff/riff-media.c +++ b/gst-libs/gst/riff/riff-media.c @@ -233,8 +233,9 @@ gst_riff_create_audio_caps (guint16 codec_id, case GST_RIFF_WAVE_FORMAT_MPEGL12: /* mp1 or mp2 */ caps = GST_CAPS_NEW ("riff_audio_mp1l12", - "audio/mpeg", - "layer", GST_PROPS_INT (2)); + "audio/mpeg", + "mpegversion", GST_PROPS_INT (1), + "layer", GST_PROPS_INT (2)); break; case GST_RIFF_WAVE_FORMAT_PCM: /* PCM/wav */ { diff --git a/gst/mpeg1sys/gstmpeg1systemencode.c b/gst/mpeg1sys/gstmpeg1systemencode.c index 62a7d4b1..dfac9493 100644 --- a/gst/mpeg1sys/gstmpeg1systemencode.c +++ b/gst/mpeg1sys/gstmpeg1systemencode.c @@ -79,7 +79,9 @@ GST_PAD_TEMPLATE_FACTORY (audio_sink_factory, GST_CAPS_NEW ( "sink_audio", "audio/mpeg", - NULL /* well, "don't care" */ + "mpegversion", GST_PROPS_INT (1), + "layer", GST_PROPS_INT_RANGE (1, 2) + /* "don't care" about samplerate/channels */ ) ) diff --git a/gst/qtdemux/qtdemux.c b/gst/qtdemux/qtdemux.c index 5bd0898a..623f69b2 100644 --- a/gst/qtdemux/qtdemux.c +++ b/gst/qtdemux/qtdemux.c @@ -26,6 +26,8 @@ #include #include +#define g_print(x...) + #define QTDEMUX_GUINT32_GET(a) GUINT32_FROM_BE(*(guint32 *)(a)) #define QTDEMUX_GUINT16_GET(a) GUINT16_FROM_BE(*(guint16 *)(a)) #define QTDEMUX_GUINT8_GET(a) (*(guint8 *)(a)) @@ -1711,6 +1713,7 @@ static GstCaps *qtdemux_audio_caps(GstQTDemux *qtdemux, guint32 fourcc) case GST_MAKE_FOURCC('.','m','p','3'): /* MPEG layer 3, CBR & VBR (QT4.1 and later) */ return GST_CAPS_NEW("_mp3_caps","audio/mpeg", + "mpegversion", GST_PROPS_INT(1), "layer", GST_PROPS_INT(3), "rate",GST_PROPS_INT_RANGE(1,G_MAXINT), "channels",GST_PROPS_INT_RANGE(1,G_MAXINT), -- cgit v1.2.1