[FFmpeg-devel] [PATCH 2/2] avcodec/vvc: Don't create new thread when thread_count is 1
Zhao Zhili
quinkblack at foxmail.com
Mon Jun 24 07:47:44 EEST 2024
From: Zhao Zhili <zhilizhao at tencent.com>
Make its behavior consistent with other decoders, e.g., H.264/H.265.
Signed-off-by: Zhao Zhili <zhilizhao at tencent.com>
---
libavcodec/vvc/dec.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/libavcodec/vvc/dec.c b/libavcodec/vvc/dec.c
index f5603306f3..4ce2b1c6bd 100644
--- a/libavcodec/vvc/dec.c
+++ b/libavcodec/vvc/dec.c
@@ -1024,7 +1024,7 @@ static av_cold int vvc_decode_init(AVCodecContext *avctx)
static AVOnce init_static_once = AV_ONCE_INIT;
const int cpu_count = av_cpu_count();
const int delayed = FFMIN(cpu_count, VVC_MAX_DELAYED_FRAMES);
- const int thread_count = avctx->thread_count ? avctx->thread_count : delayed;
+ int thread_count = avctx->thread_count ? avctx->thread_count : delayed;
int ret;
s->avctx = avctx;
@@ -1051,6 +1051,8 @@ static av_cold int vvc_decode_init(AVCodecContext *avctx)
return ret;
}
+ if (thread_count == 1)
+ thread_count = 0;
s->executor = ff_vvc_executor_alloc(s, thread_count);
if (!s->executor)
return AVERROR(ENOMEM);
--
2.42.0
More information about the ffmpeg-devel
mailing list