Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@gmail.com> --- I actually wonder why this flag is not used for encoders. Several of them explicitly check for invalid channel values.
libavcodec/decode.c | 5 +++++ libavcodec/utils.c | 8 -------- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/libavcodec/decode.c b/libavcodec/decode.c index cbd41c8cc8..390147908d 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -2026,6 +2026,11 @@ FF_DISABLE_DEPRECATION_WARNINGS FF_ENABLE_DEPRECATION_WARNINGS #endif + if (avctx->codec_type == AVMEDIA_TYPE_AUDIO && avctx->channels == 0 && + !(avctx->codec->capabilities & AV_CODEC_CAP_CHANNEL_CONF)) { + av_log(avctx, AV_LOG_ERROR, "Decoder requires channel count but channels not set\n"); + return AVERROR(EINVAL); + } if (avctx->codec->max_lowres < avctx->lowres || avctx->lowres < 0) { av_log(avctx, AV_LOG_WARNING, "The maximum value for lowres supported by the decoder is %d\n", avctx->codec->max_lowres); diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 7d4ad113df..77f98c951b 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -671,14 +671,6 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *code ret = AVERROR(EINVAL); goto free_and_end; } - if (av_codec_is_decoder(codec) && - codec->type == AVMEDIA_TYPE_AUDIO && - !(codec->capabilities & AV_CODEC_CAP_CHANNEL_CONF) && - avctx->channels == 0) { - av_log(avctx, AV_LOG_ERROR, "Decoder requires channel count but channels not set\n"); - ret = AVERROR(EINVAL); - goto free_and_end; - } if (avctx->sample_rate < 0) { av_log(avctx, AV_LOG_ERROR, "Invalid sample rate: %d\n", avctx->sample_rate); -- 2.27.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".