[FFmpeg-devel] [PATCH 1/7] avcodec/indeo2: Remove #ifdef BITSTREAM_READER_LE cruft
Paul B Mahol
onemda at gmail.com
Mon Oct 12 12:51:54 EEST 2020
On Mon, Oct 12, 2020 at 10:12:11AM +0200, Andreas Rheinhardt wrote:
> Before the LE bitstream reader was used in the Indeo 2 decoder,
> a standard BE bitstream reader with swapped bits was used; when the LE
> bitstream reader was added, the old code was only #ifdef'ed away and not
> removed. Said code has several problems: It modifies the input packet
> without ensuring that the packet is indeed writable; and it doesn't work
> since 09c4e5c5988c0037d108c5fc2a137d9ad488f7f4 because said commit
> removed the BE table used to initialize the VLC table. So just remove
> this cruft from the actual decoder, too.
>
> Also use INIT_LE_VLC_STATIC while at it.
lgtm
>
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
> ---
> libavcodec/indeo2.c | 19 +++----------------
> 1 file changed, 3 insertions(+), 16 deletions(-)
>
> diff --git a/libavcodec/indeo2.c b/libavcodec/indeo2.c
> index ccf6cd84cb..7a568bfbc4 100644
> --- a/libavcodec/indeo2.c
> +++ b/libavcodec/indeo2.c
> @@ -174,10 +174,6 @@ static int ir2_decode_frame(AVCodecContext *avctx,
> s->decode_delta = buf[18];
>
> /* decide whether frame uses deltas or not */
> -#ifndef BITSTREAM_READER_LE
> - for (i = 0; i < buf_size; i++)
> - buf[i] = ff_reverse[buf[i]];
> -#endif
>
> if ((ret = init_get_bits8(&s->gb, buf + start, buf_size - start)) < 0)
> return ret;
> @@ -232,7 +228,6 @@ static int ir2_decode_frame(AVCodecContext *avctx,
> static av_cold int ir2_decode_init(AVCodecContext *avctx)
> {
> Ir2Context * const ic = avctx->priv_data;
> - static VLC_TYPE vlc_tables[1 << CODE_VLC_BITS][2];
>
> ic->avctx = avctx;
>
> @@ -242,17 +237,9 @@ static av_cold int ir2_decode_init(AVCodecContext *avctx)
> if (!ic->picture)
> return AVERROR(ENOMEM);
>
> - ir2_vlc.table = vlc_tables;
> - ir2_vlc.table_allocated = 1 << CODE_VLC_BITS;
> -#ifdef BITSTREAM_READER_LE
> - init_vlc(&ir2_vlc, CODE_VLC_BITS, IR2_CODES,
> - &ir2_codes[0][1], 4, 2,
> - &ir2_codes[0][0], 4, 2, INIT_VLC_USE_NEW_STATIC | INIT_VLC_LE);
> -#else
> - init_vlc(&ir2_vlc, CODE_VLC_BITS, IR2_CODES,
> - &ir2_codes[0][1], 4, 2,
> - &ir2_codes[0][0], 4, 2, INIT_VLC_USE_NEW_STATIC);
> -#endif
> + INIT_LE_VLC_STATIC(&ir2_vlc, CODE_VLC_BITS, IR2_CODES,
> + &ir2_codes[0][1], 4, 2,
> + &ir2_codes[0][0], 4, 2, 1 << CODE_VLC_BITS);
>
> return 0;
> }
> --
> 2.25.1
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
More information about the ffmpeg-devel
mailing list