avcodec/ffv1enc: choose 1.2 by default for higher resolutions to ensure multi-threaded decodability

Reviewed-by: "Peter B." <pb@das-werkstatt.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2013-12-08 16:39:35 +01:00
parent dcc9009e14
commit 9e7b477c8c

View File

@ -674,6 +674,10 @@ static av_cold int encode_init(AVCodecContext *avctx)
if ((avctx->flags & (CODEC_FLAG_PASS1|CODEC_FLAG_PASS2)) || avctx->slices>1)
s->version = FFMAX(s->version, 2);
// Unspecified level & slices, we choose version 1.2+ to ensure multithreaded decodability
if (avctx->slices == 0 && avctx->level < 0 && avctx->width * avctx->height > 720*576)
s->version = FFMAX(s->version, 2);
if (avctx->level <= 0 && s->version == 2) {
s->version = 3;
}