diff --git a/libavcodec/atrac1.c b/libavcodec/atrac1.c index 4647e0c351..1ba580cbac 100644 --- a/libavcodec/atrac1.c +++ b/libavcodec/atrac1.c @@ -332,6 +332,11 @@ static av_cold int atrac1_decode_init(AVCodecContext *avctx) avctx->sample_fmt = AV_SAMPLE_FMT_FLT; + if (avctx->channels < 1 || avctx->channels > AT1_MAX_CHANNELS) { + av_log(avctx, AV_LOG_ERROR, "Unsupported number of channels: %d\n", + avctx->channels); + return AVERROR(EINVAL); + } q->channels = avctx->channels; /* Init the mdct transforms */