From: "Clément Bœsch" <u@pkh.me> To: ffmpeg-devel@ffmpeg.org Subject: [FFmpeg-devel] Initial tickering at unifying ProRes encoder Date: Mon, 11 Dec 2023 02:35:01 +0100 Message-ID: <20231211014429.1841681-1-u@pkh.me> (raw) Hello there, I'm currently investigating an issue¹ affecting Kostya ProRes encoder which is not reproducible with Anatoliy encoder (but it's too early to say if the bug is not present there as well given the differences in quantization, and it's also unclear if the issue is even actually there in the first place and not in M2/M3 firmwares). Since these encoders share more than similiarities, I've been looking into their differences, and unifying their common codepaths was helpful to my investigation. Attached is an initial patchset working out their differences by either sharing data or making code identical where relevant. I will continue that work as the investigation progresses. The quantization work might require more involved changes though. Regards, ¹ https://trac.ffmpeg.org/ticket/10255 _______________________________________________ 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 reply other threads:[~2023-12-11 1:44 UTC|newest] Thread overview: 80+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-12-11 1:35 Clément Bœsch [this message] 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 01/35] avcodec/proresenc_kostya: remove an unnecessary parenthesis level in MAKE_CODE() macro Clément Bœsch 2023-12-12 6:53 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 02/35] avcodec/proresenc_kostya: remove unused plane factor variables Clément Bœsch 2023-12-12 6:56 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 03/35] avcodec/proresenc_kostya: remove redundant codebook assignments Clément Bœsch 2023-12-12 7:00 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 04/35] avcodec/proresenc_anatoliy: move run/lev to codebook LUT to shared proresdata Clément Bœsch 2023-12-12 7:02 ` Stefano Sabatini 2023-12-12 8:02 ` Stefano Sabatini 2024-01-08 17:06 ` Clément Bœsch 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 05/35] avcodec/proresenc_kostya: remove one LUT indirection for run/level to codebook mapping Clément Bœsch 2023-12-12 8:16 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 06/35] avcodec/proresenc_anatoliy: remove duplicated define Clément Bœsch 2023-12-16 16:32 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 07/35] avcodec/proresenc_anatoliy: move DC codebook LUT to shared proresdata Clément Bœsch 2023-12-16 16:33 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 08/35] avcodec/proresenc_kostya: save a few operations in DC encoding Clément Bœsch 2023-12-16 16:54 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 09/35] avcodec/proresenc_kostya: fix chroma quantisation matrix in frame header Clément Bœsch 2023-12-16 17:12 ` Stefano Sabatini 2024-01-06 17:12 ` Clément Bœsch 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 10/35] avcodec/proresenc_kostya: simplify quantization matrix bytestream writing Clément Bœsch 2023-12-17 18:18 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 11/35] avcodec/proresenc_anatoliy: use FRAME_ID defined in proresdata.h Clément Bœsch 2023-12-17 18:19 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 12/35] avcodec/proresenc_anatoliy: shuffle encode_codeword() code to match Kostya encoder Clément Bœsch 2023-12-18 0:07 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 13/35] avcodec/proresenc_anatoliy: rework encode_codeword() prototype Clément Bœsch 2023-12-18 0:09 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 14/35] avcodec/proresenc_anatoliy: inline QSCALE() Clément Bœsch 2023-12-18 0:13 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 15/35] avcodec/proresenc_anatoliy: rename new_code/code to code/codebook Clément Bœsch 2023-12-18 0:18 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 16/35] avcodec/proresenc_anatoliy: execute codebook FFMIN() at assignment Clément Bœsch 2023-12-18 0:24 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 17/35] avcodec/proresenc_anatoliy: reduce DC encoding function prototype differences with Kostya encoder Clément Bœsch 2023-12-18 0:26 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 18/35] avcodec/proresenc_anatoliy: directly work with blocks in encode_dcs() Clément Bœsch 2023-12-18 0:30 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 19/35] avcodec/proresenc_anatoliy: import GET_SIGN() macro from Kostya encoder and use it Clément Bœsch 2023-12-18 0:30 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 20/35] avcodec/proresenc_anatoliy: compute sign only once Clément Bœsch 2023-12-18 0:37 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 21/35] avcodec/proresenc_anatoliy: rename new_dc to dc Clément Bœsch 2023-12-18 0:38 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 22/35] avcodec/proresenc_anatoliy: remove IS_NEGATIVE() macro Clément Bœsch 2023-12-18 22:29 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 23/35] avcodec/proresenc_kostya: add Anatoliy copyright Clément Bœsch 2023-12-18 22:30 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 24/35] avcodec/proresenc_anatoliy: rename TO_GOLOMB() to MAKE_CODE() Clément Bœsch 2023-12-18 22:32 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 25/35] avcodec/proresenc_anatoliy: shuffle declarations around in encode_dcs() Clément Bœsch 2023-12-18 22:35 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 26/35] avcodec/proresenc_anatoliy: only pass down the first scale to encode_dcs() Clément Bœsch 2023-12-18 22:36 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 27/35] avcodec/proresenc_anatoliy: remove TO_GOLOMB2() Clément Bœsch 2023-12-23 23:43 ` Stefano Sabatini 2024-01-07 23:00 ` Clément Bœsch 2024-01-09 23:08 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 28/35] avcodec/proresenc_anatoliy: cosmetics to make encode_dcs() identical to the one in Kostya encoder Clément Bœsch 2023-12-23 23:46 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 29/35] avcodec/proresenc_anatoliy: replace get_level() with FFABS() Clément Bœsch 2023-12-24 10:25 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 30/35] avcodec/proresenc_anatoliy: rework encode_ac_coeffs() prototype Clément Bœsch 2023-12-24 10:26 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 31/35] avcodec/proresenc_anatoliy: avoid using ff_ prefix in function arguments Clément Bœsch 2023-12-24 10:27 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 32/35] avcodec/proresenc_anatoliy: rework inner loop in encode_acs() Clément Bœsch 2023-12-24 10:36 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 33/35] avcodec/proresenc_anatoliy: execute AC run/level FFMIN() at assignment Clément Bœsch 2023-12-24 10:40 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 34/35] avcodec/proresenc_anatoliy: make a few cosmetics in encode_acs() Clément Bœsch 2023-12-24 10:45 ` Stefano Sabatini 2023-12-11 1:35 ` [FFmpeg-devel] [PATCH 35/35] avcodec/proresenc_kostya: " Clément Bœsch 2023-12-24 10:46 ` Stefano Sabatini 2023-12-11 9:15 ` [FFmpeg-devel] Initial tickering at unifying ProRes encoder Anton Khirnov 2023-12-11 9:36 ` Clément Bœsch 2023-12-24 10:56 ` Stefano Sabatini 2024-01-10 13:22 ` Clément Bœsch
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=20231211014429.1841681-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