aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec
diff options
context:
space:
mode:
authorLuca Abeni <lucabe72@email.it>2006-01-10 20:07:29 +0000
committerBenjamin Larsson <banan@ludd.ltu.se>2006-01-10 20:07:29 +0000
commit14f0c8e28af6f34411d86fa3f965e5be870024e6 (patch)
tree49a8691dc65cc32b37e12bf4f7d42b089f9051d1 /libavcodec
parente0f80bd744996df4429624373f96442e6fa5ec07 (diff)
downloadffmpeg-14f0c8e28af6f34411d86fa3f965e5be870024e6.tar.gz
Parameter added for user to set the cutoff frequency when encoding with faac.
Patch by Luca Abeni - lucabe72 at email dot it. Originally committed as revision 4837 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/avcodec.h7
-rw-r--r--libavcodec/faac.c1
-rw-r--r--libavcodec/utils.c1
3 files changed, 9 insertions, 0 deletions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 033cec225f..a7e504fda4 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -1982,6 +1982,13 @@ typedef struct AVCodecContext {
* - decoding: unused
*/
int directpred;
+
+ /**
+ * audio cutoff bandwidth (0 means "automatic") . Currently used only by FAAC
+ * - encoding: set by user.
+ * - decoding: unused
+ */
+ int cutoff;
} AVCodecContext;
/**
diff --git a/libavcodec/faac.c b/libavcodec/faac.c
index 99331df1d7..d275f3c71e 100644
--- a/libavcodec/faac.c
+++ b/libavcodec/faac.c
@@ -57,6 +57,7 @@ static int Faac_encode_init(AVCodecContext *avctx)
faac_cfg->useTns = 0;
faac_cfg->allowMidside = 1;
faac_cfg->bitRate = avctx->bit_rate / avctx->channels;
+ faac_cfg->bandWidth = avctx->cutoff;
if(avctx->flags & CODEC_FLAG_QSCALE) {
faac_cfg->bitRate = 0;
faac_cfg->quantqual = avctx->global_quality / FF_QP2LAMBDA;
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index ede6cc761c..da74865eb8 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -494,6 +494,7 @@ static AVOption options[]={
{"rate_emu", NULL, OFFSET(rate_emu), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
{"sample_rate", NULL, OFFSET(sample_rate), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
{"channels", NULL, OFFSET(channels), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
+{"cutoff", "set cutoff bandwidth", OFFSET(cutoff), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, A|E},
{"frame_size", NULL, OFFSET(frame_size), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
{"frame_number", NULL, OFFSET(frame_number), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
{"real_pict_num", NULL, OFFSET(real_pict_num), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},