diff options
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/ffv1enc.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/libavcodec/ffv1enc.c b/libavcodec/ffv1enc.c index 265ced1172..338cc4e3c1 100644 --- a/libavcodec/ffv1enc.c +++ b/libavcodec/ffv1enc.c @@ -683,8 +683,13 @@ static av_cold int encode_init(AVCodecContext *avctx) if (avctx->level <= 0 && s->version == 2) { s->version = 3; } - if (avctx->level >= 0 && avctx->level <= 4) - s->version = FFMAX(s->version, avctx->level); + if (avctx->level >= 0 && avctx->level <= 4) { + if (avctx->level < s->version) { + av_log(avctx, AV_LOG_ERROR, "Version %d needed for requested features but %d requested\n", s->version, avctx->level); + return AVERROR(EINVAL); + } + s->version = avctx->level; + } if (s->ec < 0) { s->ec = (s->version >= 3); |