aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2023-09-24 15:21:06 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2023-10-31 20:47:00 +0100
commitb60a3f70bed6e498c93255d21d8e14983b2945f6 (patch)
tree00b245790d4f81c147541149b6fd12c0633681a4
parent1ae750a16ec2f27535af8d4db2acc49da1ee74f6 (diff)
downloadffmpeg-b60a3f70bed6e498c93255d21d8e14983b2945f6.tar.gz
avcodec/wnv1: Avoid unnecessary VLC structure
Everything besides VLC.table is basically write-only and even VLC.table can be removed by accessing the underlying table directly. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-rw-r--r--libavcodec/wnv1.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/libavcodec/wnv1.c b/libavcodec/wnv1.c
index ffc9174ab2..0e8dae598f 100644
--- a/libavcodec/wnv1.c
+++ b/libavcodec/wnv1.c
@@ -39,12 +39,12 @@ static const uint8_t code_tab[16][2] = {
};
#define CODE_VLC_BITS 9
-static VLC code_vlc;
+static VLCElem code_vlc[1 << CODE_VLC_BITS];
/* returns modified base_value */
static inline int wnv1_get_code(GetBitContext *gb, int shift, int base_value)
{
- int v = get_vlc2(gb, code_vlc.table, CODE_VLC_BITS, 1);
+ int v = get_vlc2(gb, code_vlc, CODE_VLC_BITS, 1);
if (v == 8)
return get_bits(gb, 8 - shift) << shift;
@@ -115,10 +115,10 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *p,
static av_cold void wnv1_init_static(void)
{
- VLC_INIT_STATIC_FROM_LENGTHS(&code_vlc, CODE_VLC_BITS, 16,
- &code_tab[0][1], 2,
- &code_tab[0][0], 2, 1,
- -7, VLC_INIT_OUTPUT_LE, 1 << CODE_VLC_BITS);
+ VLC_INIT_STATIC_TABLE_FROM_LENGTHS(code_vlc, CODE_VLC_BITS, 16,
+ &code_tab[0][1], 2,
+ &code_tab[0][0], 2, 1,
+ -7, VLC_INIT_OUTPUT_LE);
}
static av_cold int decode_init(AVCodecContext *avctx)