From 1de11a7cab5346030a134774fbc23b3fc523a003 Mon Sep 17 00:00:00 2001 From: Paul B Mahol Date: Sat, 30 Mar 2013 22:15:50 +0000 Subject: [PATCH] libmp3lame: allow joint stereo to be disabled Signed-off-by: Paul B Mahol --- libavcodec/libmp3lame.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/libmp3lame.c b/libavcodec/libmp3lame.c index 94e358217f..95771af1ab 100644 --- a/libavcodec/libmp3lame.c +++ b/libavcodec/libmp3lame.c @@ -48,6 +48,7 @@ typedef struct LAMEContext { int buffer_index; int buffer_size; int reservoir; + int joint_stereo; float *samples_flt[2]; AudioFrameQueue afq; AVFloatDSPContext fdsp; @@ -101,7 +102,7 @@ static av_cold int mp3lame_encode_init(AVCodecContext *avctx) lame_set_num_channels(s->gfp, avctx->channels); - lame_set_mode(s->gfp, avctx->channels > 1 ? JOINT_STEREO : MONO); + lame_set_mode(s->gfp, avctx->channels > 1 ? s->joint_stereo ? JOINT_STEREO : STEREO : MONO); /* sample rate */ lame_set_in_samplerate (s->gfp, avctx->sample_rate); @@ -263,6 +264,7 @@ static int mp3lame_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, #define AE AV_OPT_FLAG_AUDIO_PARAM | AV_OPT_FLAG_ENCODING_PARAM static const AVOption options[] = { { "reservoir", "Use bit reservoir.", OFFSET(reservoir), AV_OPT_TYPE_INT, { .i64 = 1 }, 0, 1, AE }, + { "joint_stereo", "Use joint stereo.", OFFSET(joint_stereo), AV_OPT_TYPE_INT, { .i64 = 1 }, 0, 1, AE }, { NULL }, };