[FFmpeg-cvslog] avcodec/proresenc_anatoliy: only pass down the first scale to encode_dcs()
Clément Bœsch
git at videolan.org
Wed Jan 10 15:22:35 EET 2024
ffmpeg | branch: master | Clément Bœsch <u at pkh.me> | Mon Dec 11 02:10:15 2023 +0100| [a026f98f292e7669b51436a6db0a5ccf90b15be4] | committer: Clément Bœsch
avcodec/proresenc_anatoliy: only pass down the first scale to encode_dcs()
This matches encode_dcs() prototype from proresenc_kostya.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=a026f98f292e7669b51436a6db0a5ccf90b15be4
---
libavcodec/proresenc_anatoliy.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libavcodec/proresenc_anatoliy.c b/libavcodec/proresenc_anatoliy.c
index 203136e574..b193ff5cf8 100644
--- a/libavcodec/proresenc_anatoliy.c
+++ b/libavcodec/proresenc_anatoliy.c
@@ -267,19 +267,19 @@ static av_always_inline int get_level(int val)
static void encode_dcs(PutBitContext *pb, int16_t *blocks,
- int blocks_per_slice, int *qmat)
+ int blocks_per_slice, int scale)
{
int i;
int codebook = 5, code, dc, prev_dc, delta, sign, new_sign;
int diff_sign;
- prev_dc = (blocks[0] - 0x4000) / qmat[0];
+ prev_dc = (blocks[0] - 0x4000) / scale;
encode_vlc_codeword(pb, FIRST_DC_CB, MAKE_CODE(prev_dc));
sign = 0;
blocks += 64;
for (i = 1; i < blocks_per_slice; i++, blocks += 64) {
- dc = (blocks[0] - 0x4000) / qmat[0];
+ dc = (blocks[0] - 0x4000) / scale;
delta = dc - prev_dc;
new_sign = GET_SIGN(delta);
diff_sign = new_sign ^ sign;
@@ -388,7 +388,7 @@ static int encode_slice_plane(int16_t *blocks, int mb_count, uint8_t *buf, unsig
blocks_per_slice = mb_count << (2 - sub_sample_chroma);
init_put_bits(&pb, buf, buf_size);
- encode_dcs(&pb, blocks, blocks_per_slice, qmat);
+ encode_dcs(&pb, blocks, blocks_per_slice, qmat[0]);
encode_ac_coeffs(&pb, blocks, blocks_per_slice, qmat, ff_prores_scan);
flush_put_bits(&pb);
More information about the ffmpeg-cvslog
mailing list