From aefbb2bf029f3a01cc4198c9470550f7b007e868 Mon Sep 17 00:00:00 2001 From: Vittorio Giovara Date: Fri, 2 Nov 2018 15:24:45 -0400 Subject: proresdec2: Parse codec_tag and export profile information --- libavcodec/proresdec2.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'libavcodec/proresdec2.c') diff --git a/libavcodec/proresdec2.c b/libavcodec/proresdec2.c index 6b3021bdfa..130a4e3fe8 100644 --- a/libavcodec/proresdec2.c +++ b/libavcodec/proresdec2.c @@ -62,6 +62,30 @@ static av_cold int decode_init(AVCodecContext *avctx) permute(ctx->progressive_scan, ff_prores_progressive_scan, idct_permutation); permute(ctx->interlaced_scan, ff_prores_interlaced_scan, idct_permutation); + switch (avctx->codec_tag) { + case MKTAG('a','p','c','o'): + avctx->profile = FF_PROFILE_PRORES_PROXY; + break; + case MKTAG('a','p','c','s'): + avctx->profile = FF_PROFILE_PRORES_LT; + break; + case MKTAG('a','p','c','n'): + avctx->profile = FF_PROFILE_PRORES_STANDARD; + break; + case MKTAG('a','p','c','h'): + avctx->profile = FF_PROFILE_PRORES_HQ; + break; + case MKTAG('a','p','4','h'): + avctx->profile = FF_PROFILE_PRORES_4444; + break; + case MKTAG('a','p','4','x'): + avctx->profile = FF_PROFILE_PRORES_XQ; + break; + default: + avctx->profile = FF_PROFILE_UNKNOWN; + av_log(avctx, AV_LOG_WARNING, "Unknown prores profile %d\n", avctx->codec_tag); + } + return 0; } -- cgit v1.2.3