diff options
author | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2024-06-15 17:26:14 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2024-06-20 18:58:39 +0200 |
commit | f3829cc72d74f41e0eb82bf968315de2b119a8a3 (patch) | |
tree | ea57f276396aea99cabb953f597a4f4b48266eed /libavcodec/defs.h | |
parent | 3874442db29d7344169850ca6f8feb5e5629aa1d (diff) | |
download | ffmpeg-f3829cc72d74f41e0eb82bf968315de2b119a8a3.tar.gz |
avcodec/h261enc: Avoid RLTable when writing macroblock
The RLTable API in rl.c is not well designed for codecs with
an explicit end-of-block code. ff_h261_rl_tcoeff's vlc has
the EOB code as first element (presumably so that the decoder
can check for it via "if (level == 0)") and this implies
that the indices returned by get_rl_index() are off by one
for run == 0 which is therefore explicitly checked.
This commit changes this by adding a simple LUT for the
values not requiring escaping. It is easy to directly
include the sign bit into this, so this has also been done.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'libavcodec/defs.h')
0 files changed, 0 insertions, 0 deletions