[FFmpeg-devel] [PATCH v1 1/3] lavc/decode: Add get_hw_config function
Anton Khirnov
anton at khirnov.net
Tue Aug 16 14:22:37 EEST 2022
The commit message is misleading - you are not adding code, you are
moving code.
Quoting Fei Wang (2022-08-12 14:55:43)
> From: Linjie Fu <linjie.fu at intel.com>
>
> Wrap the procedure of getting the hardware config from a pixel format
> into a function.
>
> Signed-off-by: Linjie Fu <linjie.fu at intel.com>
> Signed-off-by: Fei Wang <fei.w.wang at intel.com>
> ---
> libavcodec/decode.c | 33 +++++++++++++++++++++------------
> 1 file changed, 21 insertions(+), 12 deletions(-)
>
> diff --git a/libavcodec/decode.c b/libavcodec/decode.c
> index 75373989c6..d66d5a4160 100644
> --- a/libavcodec/decode.c
> +++ b/libavcodec/decode.c
> @@ -1156,6 +1156,26 @@ static void hwaccel_uninit(AVCodecContext *avctx)
> av_buffer_unref(&avctx->hw_frames_ctx);
> }
>
> +static const AVCodecHWConfigInternal *get_hw_config(AVCodecContext *avctx, enum AVPixelFormat fmt)
> +{
> + const AVCodecHWConfigInternal *hw_config;
> + int i;
Should be declared in the loop
> + if (ffcodec(avctx->codec)->hw_configs) {
> + for (i = 0;; i++) {
> + hw_config = ffcodec(avctx->codec)->hw_configs[i];
> + if (!hw_config)
> + break;
return NULL;
> + if (hw_config->public.pix_fmt == fmt)
> + break;
return hw_config;
> + }
> + } else {
> + hw_config = NULL;
> + }
You can save one level of indentation by starting with
if (!ffcodec(avctx->codec)->hw_configs)
return NULL;
--
Anton Khirnov
More information about the ffmpeg-devel
mailing list