From: "Clément Bœsch" <u@pkh.me> To: ffmpeg-devel@ffmpeg.org Cc: "Clément Bœsch" <u@pkh.me> Subject: [FFmpeg-devel] [PATCH 1/5] avcodec/proresenc_anatoliy: use a compatible bitstream version Date: Sun, 7 Jan 2024 19:16:43 +0100 Message-ID: <20240107181647.3049578-1-u@pkh.me> (raw) In-Reply-To: <20231211190908.1882569-1-u@pkh.me> 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_anatoliy.c | 2 +- tests/ref/vsynth/vsynth1-prores_444 | 2 +- tests/ref/vsynth/vsynth1-prores_444_int | 2 +- tests/ref/vsynth/vsynth2-prores_444 | 2 +- tests/ref/vsynth/vsynth2-prores_444_int | 2 +- tests/ref/vsynth/vsynth3-prores_444 | 2 +- tests/ref/vsynth/vsynth3-prores_444_int | 2 +- tests/ref/vsynth/vsynth_lena-prores_444 | 2 +- tests/ref/vsynth/vsynth_lena-prores_444_int | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/libavcodec/proresenc_anatoliy.c b/libavcodec/proresenc_anatoliy.c index 9b9ffa03be..2223721aa0 100644 --- a/libavcodec/proresenc_anatoliy.c +++ b/libavcodec/proresenc_anatoliy.c @@ -765,7 +765,7 @@ static int prores_encode_frame(AVCodecContext *avctx, AVPacket *pkt, bytestream_put_buffer(&buf, "icpf", 4); bytestream_put_be16(&buf, header_size); - bytestream_put_be16(&buf, 0); /* version */ + bytestream_put_be16(&buf, avctx->pix_fmt != AV_PIX_FMT_YUV422P10 || ctx->need_alpha ? 1 : 0); /* version */ bytestream_put_buffer(&buf, ctx->vendor, 4); bytestream_put_be16(&buf, avctx->width); bytestream_put_be16(&buf, avctx->height); diff --git a/tests/ref/vsynth/vsynth1-prores_444 b/tests/ref/vsynth/vsynth1-prores_444 index f7f8e9033d..54a63348ad 100644 --- a/tests/ref/vsynth/vsynth1-prores_444 +++ b/tests/ref/vsynth/vsynth1-prores_444 @@ -1,4 +1,4 @@ -509e0407dff118c775dcaa4f509a4aae *tests/data/fate/vsynth1-prores_444.mov +17c5652215ee8213319f58bc6bbcc505 *tests/data/fate/vsynth1-prores_444.mov 7778954 tests/data/fate/vsynth1-prores_444.mov e0da52b5d58171294d1b299539801ae0 *tests/data/fate/vsynth1-prores_444.out.rawvideo stddev: 2.80 PSNR: 39.17 MAXDIFF: 44 bytes: 7603200/ 7603200 diff --git a/tests/ref/vsynth/vsynth1-prores_444_int b/tests/ref/vsynth/vsynth1-prores_444_int index 9515887212..9268099c7b 100644 --- a/tests/ref/vsynth/vsynth1-prores_444_int +++ b/tests/ref/vsynth/vsynth1-prores_444_int @@ -1,4 +1,4 @@ -1d5e484fa8ca08781ef2ed8428963d12 *tests/data/fate/vsynth1-prores_444_int.mov +41cc25faabf5545b84983d43cc46aded *tests/data/fate/vsynth1-prores_444_int.mov 9940947 tests/data/fate/vsynth1-prores_444_int.mov 732ceeb6887524e0aee98762fe50578b *tests/data/fate/vsynth1-prores_444_int.out.rawvideo stddev: 2.83 PSNR: 39.08 MAXDIFF: 45 bytes: 7603200/ 7603200 diff --git a/tests/ref/vsynth/vsynth2-prores_444 b/tests/ref/vsynth/vsynth2-prores_444 index c6084f5908..c1e8109cc8 100644 --- a/tests/ref/vsynth/vsynth2-prores_444 +++ b/tests/ref/vsynth/vsynth2-prores_444 @@ -1,4 +1,4 @@ -21f973c4c6076ea21f82d5fe486c0c98 *tests/data/fate/vsynth2-prores_444.mov +9b2e73b60b1809754390f3d6bcd65218 *tests/data/fate/vsynth2-prores_444.mov 5219722 tests/data/fate/vsynth2-prores_444.mov e425b6af7afa51b5e64fc529528b3691 *tests/data/fate/vsynth2-prores_444.out.rawvideo stddev: 0.88 PSNR: 49.18 MAXDIFF: 14 bytes: 7603200/ 7603200 diff --git a/tests/ref/vsynth/vsynth2-prores_444_int b/tests/ref/vsynth/vsynth2-prores_444_int index a727bb2d23..968a4ed7e1 100644 --- a/tests/ref/vsynth/vsynth2-prores_444_int +++ b/tests/ref/vsynth/vsynth2-prores_444_int @@ -1,4 +1,4 @@ -500a8249bc63ec6bb79f816bce5b6db1 *tests/data/fate/vsynth2-prores_444_int.mov +dbb3038d8fc88d7261a7aad315196600 *tests/data/fate/vsynth2-prores_444_int.mov 6420787 tests/data/fate/vsynth2-prores_444_int.mov 33a5db4f0423168d4ae4f1db3610928e *tests/data/fate/vsynth2-prores_444_int.out.rawvideo stddev: 0.93 PSNR: 48.73 MAXDIFF: 14 bytes: 7603200/ 7603200 diff --git a/tests/ref/vsynth/vsynth3-prores_444 b/tests/ref/vsynth/vsynth3-prores_444 index f05894b33e..5a1614ef5a 100644 --- a/tests/ref/vsynth/vsynth3-prores_444 +++ b/tests/ref/vsynth/vsynth3-prores_444 @@ -1,4 +1,4 @@ -3070da65c30c1a9905ee31c7ede1cf57 *tests/data/fate/vsynth3-prores_444.mov +07d2ba443bd0a2ae090dd85cc8d9423e *tests/data/fate/vsynth3-prores_444.mov 159127 tests/data/fate/vsynth3-prores_444.mov 025b48feb3d9a9652983ef71e6cb7e7c *tests/data/fate/vsynth3-prores_444.out.rawvideo stddev: 3.21 PSNR: 37.98 MAXDIFF: 41 bytes: 86700/ 86700 diff --git a/tests/ref/vsynth/vsynth3-prores_444_int b/tests/ref/vsynth/vsynth3-prores_444_int index f6ba6bc282..d9127ffd17 100644 --- a/tests/ref/vsynth/vsynth3-prores_444_int +++ b/tests/ref/vsynth/vsynth3-prores_444_int @@ -1,4 +1,4 @@ -c6279e0584575ffa1e2e13047cc7ecec *tests/data/fate/vsynth3-prores_444_int.mov +a97bdacf54af3f81610861f2ba613bc7 *tests/data/fate/vsynth3-prores_444_int.mov 184397 tests/data/fate/vsynth3-prores_444_int.mov a8852aa2841c2ce5f2aa86176ceda4ef *tests/data/fate/vsynth3-prores_444_int.out.rawvideo stddev: 3.24 PSNR: 37.91 MAXDIFF: 41 bytes: 86700/ 86700 diff --git a/tests/ref/vsynth/vsynth_lena-prores_444 b/tests/ref/vsynth/vsynth_lena-prores_444 index 29141239c5..0c6323bdb9 100644 --- a/tests/ref/vsynth/vsynth_lena-prores_444 +++ b/tests/ref/vsynth/vsynth_lena-prores_444 @@ -1,4 +1,4 @@ -b8677f9e1da7be861e8b7207028b3a9e *tests/data/fate/vsynth_lena-prores_444.mov +e14c1dbd26cebe70feda70acb18962c0 *tests/data/fate/vsynth_lena-prores_444.mov 4734395 tests/data/fate/vsynth_lena-prores_444.mov a704e05e3e0a451edef7515b25a76bb8 *tests/data/fate/vsynth_lena-prores_444.out.rawvideo stddev: 0.81 PSNR: 49.88 MAXDIFF: 8 bytes: 7603200/ 7603200 diff --git a/tests/ref/vsynth/vsynth_lena-prores_444_int b/tests/ref/vsynth/vsynth_lena-prores_444_int index 005ab68ccf..f8840973a0 100644 --- a/tests/ref/vsynth/vsynth_lena-prores_444_int +++ b/tests/ref/vsynth/vsynth_lena-prores_444_int @@ -1,4 +1,4 @@ -38195b0437f6ae1c910ba108e7a799d1 *tests/data/fate/vsynth_lena-prores_444_int.mov +7a1aa9e220dffde91c3a9a0595261461 *tests/data/fate/vsynth_lena-prores_444_int.mov 5696258 tests/data/fate/vsynth_lena-prores_444_int.mov 466380156e4d2b811f4ffb9c5a8bca72 *tests/data/fate/vsynth_lena-prores_444_int.out.rawvideo stddev: 0.88 PSNR: 49.23 MAXDIFF: 9 bytes: 7603200/ 7603200 -- 2.43.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
next prev parent reply other threads:[~2024-01-07 18:16 UTC|newest] Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-12-11 19:06 [FFmpeg-devel] Misc ProRes frame header conformity fixes Clément Bœsch 2023-12-11 19:06 ` [FFmpeg-devel] [PATCH 1/5] avcodec/proresenc_anatoliy: use a compatible bitstream version Clément Bœsch 2023-12-11 19:06 ` [FFmpeg-devel] [PATCH 2/5] avcodec/proresenc_kostya: " Clément Bœsch 2023-12-11 19:06 ` [FFmpeg-devel] [PATCH 3/5] avcodec/proresenc_kostya: do not write into alpha reserved bitfields Clément Bœsch 2023-12-12 23:13 ` Michael Niedermayer 2023-12-12 23:16 ` Michael Niedermayer 2024-01-07 18:20 ` Clément Bœsch 2023-12-11 19:06 ` [FFmpeg-devel] [PATCH 4/5] avcodec/proresenc_anatoliy: " Clément Bœsch 2023-12-11 19:06 ` [FFmpeg-devel] [PATCH 5/5] avcodec/proresenc_anatoliy: do not write into chroma " Clément Bœsch 2024-01-07 18:16 ` Clément Bœsch [this message] 2024-01-07 18:16 ` [FFmpeg-devel] [PATCH 2/5] avcodec/proresenc_kostya: use a compatible bitstream version Clément Bœsch 2024-01-08 19:57 ` Stefano Sabatini 2024-01-07 18:16 ` [FFmpeg-devel] [PATCH 3/5] avcodec/proresenc_kostya: do not write into alpha reserved bitfields Clément Bœsch 2024-01-08 20:10 ` Stefano Sabatini 2024-01-08 20:33 ` Clément Bœsch 2024-01-07 18:16 ` [FFmpeg-devel] [PATCH 4/5] avcodec/proresenc_anatoliy: " Clément Bœsch 2024-01-08 20:23 ` Stefano Sabatini 2024-01-08 20:34 ` Clément Bœsch 2024-01-07 18:16 ` [FFmpeg-devel] [PATCH 5/5] avcodec/proresenc_anatoliy: do not write into chroma " Clément Bœsch 2024-01-10 19:12 ` Clément Bœsch 2024-01-10 21:43 ` Stefano Sabatini 2024-01-10 22:37 ` Clément Bœsch 2024-01-08 19:54 ` [FFmpeg-devel] [PATCH 1/5] avcodec/proresenc_anatoliy: use a compatible bitstream version Stefano Sabatini
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20240107181647.3049578-1-u@pkh.me \ --to=u@pkh.me \ --cc=ffmpeg-devel@ffmpeg.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel This inbox may be cloned and mirrored by anyone: git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \ ffmpegdev@gitmailbox.com public-inbox-index ffmpegdev Example config snippet for mirrors. AGPL code for this site: git clone https://public-inbox.org/public-inbox.git