[FFmpeg-devel] [PATCH 1/2] avcodec/rv34_parser: Merge RV30 and RV40 parsers

James Almer jamrial at gmail.com
Mon Sep 4 16:49:42 EEST 2023


On 9/4/2023 10:44 AM, Andreas Rheinhardt wrote:
> They do mostly the same.
> 
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> ---
>   libavcodec/Makefile      |  3 +--
>   libavcodec/parsers.c     |  3 +--
>   libavcodec/rv34_parser.c | 16 ++--------------
>   3 files changed, 4 insertions(+), 18 deletions(-)
> 
> diff --git a/libavcodec/Makefile b/libavcodec/Makefile
> index 08fd151619..bf3b0a93f9 100644
> --- a/libavcodec/Makefile
> +++ b/libavcodec/Makefile
> @@ -1203,8 +1203,7 @@ OBJS-$(CONFIG_OPUS_PARSER)             += opus_parser.o opus_parse.o \
>   OBJS-$(CONFIG_PNG_PARSER)              += png_parser.o
>   OBJS-$(CONFIG_PNM_PARSER)              += pnm_parser.o pnm.o
>   OBJS-$(CONFIG_QOI_PARSER)              += qoi_parser.o
> -OBJS-$(CONFIG_RV30_PARSER)             += rv34_parser.o
> -OBJS-$(CONFIG_RV40_PARSER)             += rv34_parser.o
> +OBJS-$(CONFIG_RV34_PARSER)             += rv34_parser.o
>   OBJS-$(CONFIG_SBC_PARSER)              += sbc_parser.o
>   OBJS-$(CONFIG_SIPR_PARSER)             += sipr_parser.o
>   OBJS-$(CONFIG_TAK_PARSER)              += tak_parser.o tak.o
> diff --git a/libavcodec/parsers.c b/libavcodec/parsers.c
> index a663b9e253..5128009cd4 100644
> --- a/libavcodec/parsers.c
> +++ b/libavcodec/parsers.c
> @@ -66,8 +66,7 @@ extern const AVCodecParser ff_opus_parser;
>   extern const AVCodecParser ff_png_parser;
>   extern const AVCodecParser ff_pnm_parser;
>   extern const AVCodecParser ff_qoi_parser;
> -extern const AVCodecParser ff_rv30_parser;
> -extern const AVCodecParser ff_rv40_parser;
> +extern const AVCodecParser ff_rv34_parser;

This afaik will break command lines like "--disable-parsers 
--enable-parser=rv30".
I don't particularly care, or think anyone will care, but letting you 
know just in case.

>   extern const AVCodecParser ff_sbc_parser;
>   extern const AVCodecParser ff_sipr_parser;
>   extern const AVCodecParser ff_tak_parser;
> diff --git a/libavcodec/rv34_parser.c b/libavcodec/rv34_parser.c
> index e17bc8562d..fbc764c64f 100644
> --- a/libavcodec/rv34_parser.c
> +++ b/libavcodec/rv34_parser.c
> @@ -24,8 +24,6 @@
>    * RV30/40 parser
>    */
>   
> -#include "config_components.h"
> -
>   #include "parser.h"
>   #include "libavutil/intreadwrite.h"
>   
> @@ -78,18 +76,8 @@ static int rv34_parse(AVCodecParserContext *s,
>       return buf_size;
>   }
>   
> -#if CONFIG_RV30_PARSER
> -const AVCodecParser ff_rv30_parser = {
> -    .codec_ids      = { AV_CODEC_ID_RV30 },
> -    .priv_data_size = sizeof(RV34ParseContext),
> -    .parser_parse   = rv34_parse,
> -};
> -#endif
> -
> -#if CONFIG_RV40_PARSER
> -const AVCodecParser ff_rv40_parser = {
> -    .codec_ids      = { AV_CODEC_ID_RV40 },
> +const AVCodecParser ff_rv34_parser = {
> +    .codec_ids      = { AV_CODEC_ID_RV30, AV_CODEC_ID_RV40 },
>       .priv_data_size = sizeof(RV34ParseContext),
>       .parser_parse   = rv34_parse,
>   };
> -#endif


More information about the ffmpeg-devel mailing list