]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/decode.c
avcodec/decode: Also consider channels in max_samples check
[ffmpeg] / libavcodec / decode.c
index a7b37c6917d73751d8c9c4ba1638631d6c44b711..0883c7209cdea158a529b29ebd3d4680b0a652c2 100644 (file)
@@ -1925,7 +1925,7 @@ static int get_buffer_internal(AVCodecContext *avctx, AVFrame *frame, int flags)
             return AVERROR(EINVAL);
         }
     } else if (avctx->codec_type == AVMEDIA_TYPE_AUDIO) {
-        if (frame->nb_samples > avctx->max_samples) {
+        if (frame->nb_samples * avctx->channels > avctx->max_samples) {
             av_log(avctx, AV_LOG_ERROR, "samples per frame %d, exceeds max_samples %"PRId64"\n", frame->nb_samples, avctx->max_samples);
             return AVERROR(EINVAL);
         }