From 8c62d77139ca07390414fcfd26b2a4d506fed3b9 Mon Sep 17 00:00:00 2001 From: Haihao Xiang Date: Mon, 22 Apr 2024 14:57:08 +0800 Subject: [PATCH] lavc/vp9: Fix regression introduced in 0ba05857 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. Reviewed-by: Andreas Rheinhardt Signed-off-by: Haihao Xiang --- 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]);