|
|
@@ -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); |
|
|
|