[FFmpeg-devel] [PATCH] lavc/vp9: Fix regression introduced in 0ba05857

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Tue Apr 23 15:14:02 EEST 2024


Xiang, Haihao:
> From: Haihao Xiang <haihao.xiang at intel.com>
> 
> It is possible that ff_progress_frame_await() is called but
> ff_progress_frame_report() isn't called when a hardware acceleration
> method is used, so a thread for vp9 decoding might get stuck.
> 
> Signed-off-by: Haihao Xiang <haihao.xiang at intel.com>
> ---
>  libavcodec/vp9.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/libavcodec/vp9.c b/libavcodec/vp9.c
> index 3adfb98f2d..6e2d18bf95 100644
> --- a/libavcodec/vp9.c
> +++ b/libavcodec/vp9.c
> @@ -1735,9 +1735,9 @@ static int vp9_decode_frame(AVCodecContext *avctx, AVFrame *frame,
>          if (ret < 0)
>              goto fail;
>      }
> -    ff_progress_frame_report(&s->s.frames[CUR_FRAME].tf, INT_MAX);
>  
>  finish:
> +    ff_progress_frame_report(&s->s.frames[CUR_FRAME].tf, INT_MAX);
>      // ref frame setup
>      for (int i = 0; i < 8; i++)
>          ff_progress_frame_replace(&s->s.refs[i], &s->next_refs[i]);

LGTM. Sorry for the breakage.

- Andreas



More information about the ffmpeg-devel mailing list