[FFmpeg-devel] [PATCH 07/35] avcodec/proresenc_anatoliy: move DC codebook LUT to shared proresdata

Clément Bœsch u at pkh.me
Mon Dec 11 03:35:08 EET 2023


This is going to be shared with proresenc_kostya in the upcoming commit.
---
 libavcodec/proresdata.c         | 2 ++
 libavcodec/proresdata.h         | 1 +
 libavcodec/proresenc_anatoliy.c | 3 +--
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/libavcodec/proresdata.c b/libavcodec/proresdata.c
index 12ee43bddd..866839c8d1 100644
--- a/libavcodec/proresdata.c
+++ b/libavcodec/proresdata.c
@@ -44,6 +44,8 @@ const uint8_t ff_prores_interlaced_scan[64] = {
     46, 39, 47, 54, 61, 62, 55, 63
 };
 
+const uint8_t ff_prores_dc_codebook[7] = { 0x04, 0x28, 0x28, 0x4D, 0x4D, 0x70, 0x70 };
+
 const uint8_t ff_prores_run_to_cb[16] = { 0x06, 0x06, 0x05, 0x05, 0x04, 0x29,
         0x29, 0x29, 0x29, 0x28, 0x28, 0x28, 0x28, 0x28, 0x28, 0x4C };
 
diff --git a/libavcodec/proresdata.h b/libavcodec/proresdata.h
index 4d16992892..e24472d844 100644
--- a/libavcodec/proresdata.h
+++ b/libavcodec/proresdata.h
@@ -29,6 +29,7 @@
 
 extern const uint8_t ff_prores_progressive_scan[64];
 extern const uint8_t ff_prores_interlaced_scan[64];
+extern const uint8_t ff_prores_dc_codebook[7];
 extern const uint8_t ff_prores_run_to_cb[16];
 extern const uint8_t ff_prores_lev_to_cb[10];
 
diff --git a/libavcodec/proresenc_anatoliy.c b/libavcodec/proresenc_anatoliy.c
index c6f49be9b8..d6f5cefc16 100644
--- a/libavcodec/proresenc_anatoliy.c
+++ b/libavcodec/proresenc_anatoliy.c
@@ -266,7 +266,6 @@ static av_always_inline int get_level(int val)
     return (val ^ sign) - sign;
 }
 
-static const uint8_t dc_codebook[7] = { 0x04, 0x28, 0x28, 0x4D, 0x4D, 0x70, 0x70};
 
 static void encode_dc_coeffs(PutBitContext *pb, int16_t *in,
         int blocks_per_slice, int *qmat)
@@ -286,7 +285,7 @@ static void encode_dc_coeffs(PutBitContext *pb, int16_t *in,
         diff_sign = DIFF_SIGN(delta, sign);
         new_code  = TO_GOLOMB2(get_level(delta), diff_sign);
 
-        encode_codeword(pb, new_code, dc_codebook[FFMIN(code, 6)]);
+        encode_codeword(pb, new_code, ff_prores_dc_codebook[FFMIN(code, 6)]);
 
         code      = new_code;
         sign      = delta >> 31;
-- 
2.43.0



More information about the ffmpeg-devel mailing list