From c37c383e595eac67d174e6ac596d6deba8c7cfd6 Mon Sep 17 00:00:00 2001 From: Mohammad Alsaleh Date: Sun, 15 Jul 2012 19:41:11 +0300 Subject: libfdk-aac: Check if cutoff value is valid MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Passing a cutoff value < sample_rate/256 will cause a crash. Also, values >20000 will have no effect and 20000 will be used anyway. Signed-off-by: Mohammad Alsaleh Signed-off-by: Martin Storsjö --- libavcodec/libfdk-aacenc.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'libavcodec/libfdk-aacenc.c') diff --git a/libavcodec/libfdk-aacenc.c b/libavcodec/libfdk-aacenc.c index b2bfad275e..f2c3fbdb73 100644 --- a/libavcodec/libfdk-aacenc.c +++ b/libavcodec/libfdk-aacenc.c @@ -231,6 +231,11 @@ static av_cold int aac_encode_init(AVCodecContext *avctx) } if (avctx->cutoff > 0) { + if (avctx->cutoff < (avctx->sample_rate + 255) >> 8) { + av_log(avctx, AV_LOG_ERROR, "cutoff valid range is %d-20000\n", + (avctx->sample_rate + 255) >> 8); + goto error; + } if ((err = aacEncoder_SetParam(s->handle, AACENC_BANDWIDTH, avctx->cutoff)) != AACENC_OK) { av_log(avctx, AV_LOG_ERROR, "Unable to set the encoder bandwith to %d: %s\n", -- cgit v1.2.3