[FFmpeg-devel] [PATCH 2/6] lavfi/lavfutils: switch to the new decoding API

James Almer jamrial at gmail.com
Mon Nov 2 16:34:42 EET 2020


On 11/2/2020 10:17 AM, Anton Khirnov wrote:
> ---
>  libavfilter/lavfutils.c | 14 +++++++++-----
>  1 file changed, 9 insertions(+), 5 deletions(-)
> 
> diff --git a/libavfilter/lavfutils.c b/libavfilter/lavfutils.c
> index a2085ed5ef..f8f8415c80 100644
> --- a/libavfilter/lavfutils.c
> +++ b/libavfilter/lavfutils.c
> @@ -31,7 +31,7 @@ int ff_load_image(uint8_t *data[4], int linesize[4],
>      AVCodecContext *codec_ctx = NULL;
>      AVCodecParameters *par;
>      AVFrame *frame = NULL;
> -    int frame_decoded, ret = 0;
> +    int ret = 0;
>      AVPacket pkt;
>      AVDictionary *opt=NULL;
>  
> @@ -86,12 +86,16 @@ int ff_load_image(uint8_t *data[4], int linesize[4],
>          goto end;
>      }
>  
> -    ret = avcodec_decode_video2(codec_ctx, frame, &frame_decoded, &pkt);
> +    ret = avcodec_send_packet(codec_ctx, &pkt);
>      av_packet_unref(&pkt);
> -    if (ret < 0 || !frame_decoded) {
> +    if (ret < 0) {
> +        av_log(log_ctx, AV_LOG_ERROR, "Error submitting a packet to decoder\n");
> +        goto end;
> +    }
> +
> +    ret = avcodec_receive_frame(codec_ctx, frame);
> +    if (ret < 0) {
>          av_log(log_ctx, AV_LOG_ERROR, "Failed to decode image from file\n");
> -        if (ret >= 0)
> -            ret = -1;
>          goto end;
>      }

LGTM.


More information about the ffmpeg-devel mailing list