aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-12-29 22:09:10 +0100
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2021-01-27 11:53:22 +0100
commit9f38fac053010205806ece11e6aea9b7d3bde041 (patch)
tree7fe7818f7331aae5d8f423a2a4ec6af403765a17
parentba96f2254adb23802752ca41f2bd926ffbf15880 (diff)
downloadffmpeg-9f38fac053010205806ece11e6aea9b7d3bde041.tar.gz
avcodec/h261dec: Make VLC smaller
The VLC for the macroblock address increment uses nine bits; yet there is no code with this length: All codes are either shorter or longer. So one can make the table smaller without changing the amount of codes that need more than one round of parsing. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-rw-r--r--libavcodec/h261dec.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/h261dec.c b/libavcodec/h261dec.c
index 817453f60c..2b3408d7b3 100644
--- a/libavcodec/h261dec.c
+++ b/libavcodec/h261dec.c
@@ -35,7 +35,7 @@
#include "h261.h"
#include "internal.h"
-#define H261_MBA_VLC_BITS 9
+#define H261_MBA_VLC_BITS 8
#define H261_MTYPE_VLC_BITS 6
#define H261_MV_VLC_BITS 7
#define H261_CBP_VLC_BITS 9
@@ -52,7 +52,7 @@ static av_cold void h261_decode_init_static(void)
{
INIT_VLC_STATIC(&h261_mba_vlc, H261_MBA_VLC_BITS, 35,
ff_h261_mba_bits, 1, 1,
- ff_h261_mba_code, 1, 1, 662);
+ ff_h261_mba_code, 1, 1, 540);
INIT_VLC_STATIC(&h261_mtype_vlc, H261_MTYPE_VLC_BITS, 10,
ff_h261_mtype_bits, 1, 1,
ff_h261_mtype_code, 1, 1, 80);