summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-08-12 14:57:36 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-08-15 18:10:31 +0200
commit30408768335403114d1ed2e80f8032683f85602a (patch)
tree33368c305ad365f2f25e875511d382c7437c51d7
parentc469c3c3b18fbacd6ee0165573034d2a0408b83f (diff)
avcodec/avcodec: Move initializing frame-thrd encoder to encode_preinit
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-rw-r--r--libavcodec/avcodec.c6
-rw-r--r--libavcodec/encode.c6
2 files changed, 6 insertions, 6 deletions
diff --git a/libavcodec/avcodec.c b/libavcodec/avcodec.c
index f82d9e9f74..0451f57f82 100644
--- a/libavcodec/avcodec.c
+++ b/libavcodec/avcodec.c
@@ -283,12 +283,6 @@ FF_ENABLE_DEPRECATION_WARNINGS
if (ret < 0)
goto free_and_end;
- if (CONFIG_FRAME_THREAD_ENCODER && av_codec_is_encoder(avctx->codec)) {
- ret = ff_frame_thread_encoder_init(avctx);
- if (ret < 0)
- goto free_and_end;
- }
-
if (HAVE_THREADS
&& !(avci->frame_thread_encoder && (avctx->active_thread_type&FF_THREAD_FRAME))) {
/* Frame-threaded decoders call FFCodec.init for their child contexts. */
diff --git a/libavcodec/encode.c b/libavcodec/encode.c
index 7919b165da..bd66f138a3 100644
--- a/libavcodec/encode.c
+++ b/libavcodec/encode.c
@@ -668,6 +668,12 @@ int ff_encode_preinit(AVCodecContext *avctx)
return AVERROR(ENOMEM);
}
+ if (CONFIG_FRAME_THREAD_ENCODER) {
+ ret = ff_frame_thread_encoder_init(avctx);
+ if (ret < 0)
+ return ret;
+ }
+
return 0;
}