From 237bbf6678a0c3fc6962716edf72db1063de860c Mon Sep 17 00:00:00 2001 From: Paul B Mahol Date: Thu, 6 Sep 2018 13:39:22 +0200 Subject: avcodec/dnxhddec: ask for samples with alpha --- libavcodec/dnxhddec.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'libavcodec/dnxhddec.c') diff --git a/libavcodec/dnxhddec.c b/libavcodec/dnxhddec.c index 11d0bf424a..ae8b0ffafa 100644 --- a/libavcodec/dnxhddec.c +++ b/libavcodec/dnxhddec.c @@ -67,6 +67,8 @@ typedef struct DNXHDContext { const CIDEntry *cid_table; int bit_depth; // 8, 10, 12 or 0 if not initialized at all. int is_444; + int alpha; + int lla; int mbaff; int act; int (*decode_dct_block)(const struct DNXHDContext *ctx, @@ -205,6 +207,10 @@ static int dnxhd_decode_header(DNXHDContext *ctx, AVFrame *frame, ctx->cur_field = 0; } ctx->mbaff = (buf[0x6] >> 5) & 1; + ctx->alpha = buf[0x7] & 1; + ctx->lla = (buf[0x7] >> 1) & 1; + if (ctx->alpha) + avpriv_request_sample(ctx->avctx, "alpha"); ctx->height = AV_RB16(buf + 0x18); ctx->width = AV_RB16(buf + 0x1a); -- cgit v1.2.3