Commit d71901757c for ffmpeg
commit d71901757c646501ff17bd76d5b6927809f58835
Author: AJ Granowski <AJGranowski@users.noreply.github.com>
Date: Wed Sep 30 15:54:58 2026 -0500
avcodec/dnxhddec: Increase alpha channel `avpriv_request_sample` verbosity
The alpha channel of VC-3 bitstreams are encoded either as DCT-encoded or RLE-encoded alpha blocks. This change differentiates those two when requesting a sample.
This is an incremental change towards adding DCT block alpha decoding for the DNxHD codec. Following PRs will work from the VC-3 standard https://pub.smpte.org/doc/st2019-1/20160518-pub/ 8.1.2
Related tickets: https://trac.ffmpeg.org/ticket/3707
diff --git a/libavcodec/dnxhddec.c b/libavcodec/dnxhddec.c
index 7ec61f9ebd..7ba01351d9 100644
--- a/libavcodec/dnxhddec.c
+++ b/libavcodec/dnxhddec.c
@@ -208,8 +208,13 @@ static int dnxhd_decode_header(DNXHDContext *ctx, AVFrame *frame,
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");
+ if (ctx->alpha) {
+ if (ctx->lla) {
+ avpriv_request_sample(ctx->avctx, "RLE block alpha decoding");
+ } else {
+ avpriv_request_sample(ctx->avctx, "DCT block alpha decoding");
+ }
+ }
ctx->height = AV_RB16(buf + 0x18);
ctx->width = AV_RB16(buf + 0x1a);