[FFmpeg-devel] [PATCH 2/5] avcodec/proresenc_kostya: use a compatible bitstream version
Clément Bœsch
u at pkh.me
Mon Dec 11 21:06:52 EET 2023
Quoting SMPTE RDD 36:2015:
A decoder shall abort if it encounters a bitstream with an unsupported
bitstream_version value. If 0, the value of the chroma_format syntax
element shall be 2 (4:2:2 sampling) and the value of the
alpha_channel_type element shall be 0 (no encoded alpha); if 1, any
permissible value may be used for those syntax elements.
So if we're not in 4:2:2 or if there is alpha, we are not allowed to use
version 0.
---
libavcodec/proresenc_kostya.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavcodec/proresenc_kostya.c b/libavcodec/proresenc_kostya.c
index 05e90bb236..7e660a3708 100644
--- a/libavcodec/proresenc_kostya.c
+++ b/libavcodec/proresenc_kostya.c
@@ -995,7 +995,7 @@ static int encode_frame(AVCodecContext *avctx, AVPacket *pkt,
// frame header
tmp = buf;
buf += 2; // frame header size will be stored here
- bytestream_put_be16 (&buf, 0); // version 1
+ bytestream_put_be16 (&buf, ctx->chroma_factor != CFACTOR_Y422 || ctx->alpha_bits ? 1 : 0);
bytestream_put_buffer(&buf, ctx->vendor, 4);
bytestream_put_be16 (&buf, avctx->width);
bytestream_put_be16 (&buf, avctx->height);
--
2.43.0
More information about the ffmpeg-devel
mailing list