[FFmpeg-devel] [WIP][RFC][PATCH] avcodec: add IMM4 decoder
Moritz Barsnick
barsnick at gmx.net
Tue Aug 7 12:45:51 EEST 2018
Hi,
On Mon, Aug 06, 2018 at 12:35:15 +0200, Paul B Mahol wrote:
> patch attached.
I can't judge on most of the procedural stuff, but here's some 2 cents:
> libavcodec/Makefile | 1 +
> libavcodec/allcodecs.c | 1 +
> libavcodec/avcodec.h | 1 +
> libavcodec/codec_desc.c | 7 +
> libavcodec/imm4.c | 399 ++++++++++++++++++++++++++++++++++++++++++++++++
> libavformat/riff.c | 1 +
Changelog and docs missing.
> OBJS-$(CONFIG_INTERPLAY_VIDEO_DECODER) += interplayvideo.o
> +OBJS-$(CONFIG_IMM4_DECODER) += imm4.o
> OBJS-$(CONFIG_JACOSUB_DECODER) += jacosubdec.o ass.o
Alphabetical order?
> extern AVCodec ff_interplay_video_decoder;
> +extern AVCodec ff_imm4_decoder;
> extern AVCodec ff_jpeg2000_encoder;
Alphabetical order?
> +static uint16_t table_7[304] = {
> + 0u, 0u, 0u, 0u, 0u, 0u, 0u, 0u, 16514u, 16514u, 16387u, 16387u,
Inconsisent to declare these explicitly with 'u',
> +static uint8_t table_8[] = {
> + 0, 12, 11, 11, 11, 11, 11, 11, 12, 12,
but not these, but it doesn't really matter.
Shouldn't they be const, BTW?
> + if (x)
> + return table_5[2 * value];
> + else
> + return 15 - table_5[2 * value];
I've seen requests on this list to "simplify" such terms to
return x ? table_5[2 * value] : 15 - table_5[2 * value];
but I don't care, and consider your syntax more readable.
> + if (!c) {
> + f |= 2;
> + av_assert0(0);
> + }
If it always aborts, what's the use of the operation on f?
av_assert0(c); ?
> + printf("gb: %d\n", get_bits_left(gb));
Debug code?
Cheers,
Moritz
More information about the ffmpeg-devel
mailing list