From ba69ee8801dbb8641ea575c33d3b083e251e757b Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Fri, 6 Nov 2020 13:30:20 +0100 Subject: [PATCH] avcodec/intrax8: Remove VLC offsets table Signed-off-by: Andreas Rheinhardt --- libavcodec/intrax8.c | 30 +++++++++--------------------- 1 file changed, 9 insertions(+), 21 deletions(-) diff --git a/libavcodec/intrax8.c b/libavcodec/intrax8.c index b85653881db..1d4aa879b1f 100644 --- a/libavcodec/intrax8.c +++ b/libavcodec/intrax8.c @@ -51,18 +51,6 @@ static av_cold void x8_vlc_init(void) { int i; int offset = 0; - int sizeidx = 0; - static const uint16_t sizes[8 * 4 + 8 * 2 + 2 + 4] = { - 576, 548, 582, 618, 546, 616, 560, 642, - 584, 582, 704, 664, 512, 544, 656, 640, - 512, 648, 582, 566, 532, 614, 596, 648, - 586, 552, 584, 590, 544, 578, 584, 624, - - 528, 528, 526, 528, 536, 528, 526, 544, - 544, 512, 512, 528, 528, 544, 512, 544, - - 128, 128, 128, 128, 128, 128, - }; static VLC_TYPE table[28150][2]; @@ -70,10 +58,10 @@ static av_cold void x8_vlc_init(void) #define init_ac_vlc(dst, src) \ do { \ dst.table = &table[offset]; \ - dst.table_allocated = sizes[sizeidx]; \ - offset += sizes[sizeidx++]; \ + dst.table_allocated = FF_ARRAY_ELEMS(table) - offset; \ init_vlc(&dst, AC_VLC_BITS, 77, &src[1], 4, 2, &src[0], 4, 2, \ - INIT_VLC_USE_NEW_STATIC); \ + INIT_VLC_STATIC_OVERLONG); \ + offset += dst.table_size; \ } while(0) for (i = 0; i < 8; i++) { @@ -88,10 +76,10 @@ static av_cold void x8_vlc_init(void) #define init_dc_vlc(dst, src) \ do { \ dst.table = &table[offset]; \ - dst.table_allocated = sizes[sizeidx]; \ - offset += sizes[sizeidx++]; \ + dst.table_allocated = FF_ARRAY_ELEMS(table) - offset; \ init_vlc(&dst, DC_VLC_BITS, 34, &src[1], 4, 2, &src[0], 4, 2, \ - INIT_VLC_USE_NEW_STATIC); \ + INIT_VLC_STATIC_OVERLONG); \ + offset += dst.table_size; \ } while(0) for (i = 0; i < 8; i++) { @@ -104,10 +92,10 @@ static av_cold void x8_vlc_init(void) #define init_or_vlc(dst, src) \ do { \ dst.table = &table[offset]; \ - dst.table_allocated = sizes[sizeidx]; \ - offset += sizes[sizeidx++]; \ + dst.table_allocated = FF_ARRAY_ELEMS(table) - offset; \ init_vlc(&dst, OR_VLC_BITS, 12, &src[1], 4, 2, &src[0], 4, 2, \ - INIT_VLC_USE_NEW_STATIC); \ + INIT_VLC_STATIC_OVERLONG); \ + offset += dst.table_size; \ } while(0) for (i = 0; i < 2; i++) -- 2.39.2