Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
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".

             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