Browse Source

libmp3lame: use the LAME default bit rate

Also, only set bit rate for CBR.
tags/n0.11
Justin Ruggles 13 years ago
parent
commit
232e16dd02
1 changed files with 10 additions and 2 deletions
  1. +10
    -2
      libavcodec/libmp3lame.c

+ 10
- 2
libavcodec/libmp3lame.c View File

@@ -28,6 +28,7 @@
#include "libavutil/log.h"
#include "libavutil/opt.h"
#include "avcodec.h"
#include "internal.h"
#include "mpegaudio.h"
#include "mpegaudiodecheader.h"
#include <lame/lame.h>
@@ -71,11 +72,12 @@ static av_cold int MP3lame_encode_init(AVCodecContext *avctx)
lame_set_quality(s->gfp, avctx->compression_level);
}
lame_set_mode(s->gfp, avctx->channels > 1 ? JOINT_STEREO : MONO);
lame_set_brate(s->gfp, avctx->bit_rate / 1000);
if (avctx->flags & CODEC_FLAG_QSCALE) {
lame_set_brate(s->gfp, 0);
lame_set_VBR(s->gfp, vbr_default);
lame_set_VBR_quality(s->gfp, avctx->global_quality / (float)FF_QP2LAMBDA);
} else {
if (avctx->bit_rate)
lame_set_brate(s->gfp, avctx->bit_rate / 1000);
}
lame_set_bWriteVbrTag(s->gfp,0);
lame_set_disable_reservoir(s->gfp, !s->reservoir);
@@ -171,6 +173,11 @@ static const AVClass libmp3lame_class = {
.version = LIBAVUTIL_VERSION_INT,
};

static const AVCodecDefault libmp3lame_defaults[] = {
{ "b", "0" },
{ NULL },
};

AVCodec ff_libmp3lame_encoder = {
.name = "libmp3lame",
.type = AVMEDIA_TYPE_AUDIO,
@@ -185,4 +192,5 @@ AVCodec ff_libmp3lame_encoder = {
.supported_samplerates = sSampleRates,
.long_name = NULL_IF_CONFIG_SMALL("libmp3lame MP3 (MPEG audio layer 3)"),
.priv_class = &libmp3lame_class,
.defaults = libmp3lame_defaults,
};

Loading…
Cancel
Save