diff --git a/libavcodec/aasc.c b/libavcodec/aasc.c index fd63aba4b8..58cc3c85ba 100644 --- a/libavcodec/aasc.c +++ b/libavcodec/aasc.c @@ -159,4 +159,5 @@ AVCodec ff_aasc_decoder = { .close = aasc_decode_end, .decode = aasc_decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/aic.c b/libavcodec/aic.c index ff8e3922be..4faa574909 100644 --- a/libavcodec/aic.c +++ b/libavcodec/aic.c @@ -492,4 +492,5 @@ AVCodec ff_aic_decoder = { .decode = aic_decode_frame, .capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS, .init_thread_copy = ONLY_IF_THREADS_ENABLED(aic_decode_init), + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/anm.c b/libavcodec/anm.c index 29d59fbceb..72684189bb 100644 --- a/libavcodec/anm.c +++ b/libavcodec/anm.c @@ -199,4 +199,5 @@ AVCodec ff_anm_decoder = { .close = decode_end, .decode = decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/ansi.c b/libavcodec/ansi.c index 19c88d8d51..3c82dcd338 100644 --- a/libavcodec/ansi.c +++ b/libavcodec/ansi.c @@ -482,4 +482,5 @@ AVCodec ff_ansi_decoder = { .close = decode_close, .decode = decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/aura.c b/libavcodec/aura.c index 5f84d957fc..5ef9316632 100644 --- a/libavcodec/aura.c +++ b/libavcodec/aura.c @@ -105,4 +105,5 @@ AVCodec ff_aura2_decoder = { .init = aura_decode_init, .decode = aura_decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/avrndec.c b/libavcodec/avrndec.c index cdec99c990..c37f99661b 100644 --- a/libavcodec/avrndec.c +++ b/libavcodec/avrndec.c @@ -170,4 +170,5 @@ AVCodec ff_avrn_decoder = { .decode = decode_frame, .capabilities = AV_CODEC_CAP_DR1, .max_lowres = 3, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/avs.c b/libavcodec/avs.c index 345d628dd5..66724d47b7 100644 --- a/libavcodec/avs.c +++ b/libavcodec/avs.c @@ -186,4 +186,5 @@ AVCodec ff_avs_decoder = { .decode = avs_decode_frame, .close = avs_decode_end, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/avuidec.c b/libavcodec/avuidec.c index 5117844fa9..4cf620d43a 100644 --- a/libavcodec/avuidec.c +++ b/libavcodec/avuidec.c @@ -127,4 +127,5 @@ AVCodec ff_avui_decoder = { .init = avui_decode_init, .decode = avui_decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/bethsoftvideo.c b/libavcodec/bethsoftvideo.c index 97b745d38a..274516bf4d 100644 --- a/libavcodec/bethsoftvideo.c +++ b/libavcodec/bethsoftvideo.c @@ -163,4 +163,5 @@ AVCodec ff_bethsoftvid_decoder = { .close = bethsoftvid_decode_end, .decode = bethsoftvid_decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/bfi.c b/libavcodec/bfi.c index 6727629b52..233a1d27a8 100644 --- a/libavcodec/bfi.c +++ b/libavcodec/bfi.c @@ -185,4 +185,5 @@ AVCodec ff_bfi_decoder = { .close = bfi_decode_close, .decode = bfi_decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/bmvvideo.c b/libavcodec/bmvvideo.c index 97f850dbae..dbbc1001ca 100644 --- a/libavcodec/bmvvideo.c +++ b/libavcodec/bmvvideo.c @@ -295,4 +295,5 @@ AVCodec ff_bmv_video_decoder = { .init = decode_init, .decode = decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/c93.c b/libavcodec/c93.c index fd026acb8a..b708659cca 100644 --- a/libavcodec/c93.c +++ b/libavcodec/c93.c @@ -269,4 +269,5 @@ AVCodec ff_c93_decoder = { .close = decode_end, .decode = decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/cllc.c b/libavcodec/cllc.c index 1c6902afd4..80b049861e 100644 --- a/libavcodec/cllc.c +++ b/libavcodec/cllc.c @@ -496,4 +496,5 @@ AVCodec ff_cllc_decoder = { .decode = cllc_decode_frame, .close = cllc_decode_close, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/cyuv.c b/libavcodec/cyuv.c index 8e6749b0f4..f2b0a7cbab 100644 --- a/libavcodec/cyuv.c +++ b/libavcodec/cyuv.c @@ -185,6 +185,7 @@ AVCodec ff_aura_decoder = { .init = cyuv_decode_init, .decode = cyuv_decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif @@ -198,5 +199,6 @@ AVCodec ff_cyuv_decoder = { .init = cyuv_decode_init, .decode = cyuv_decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif diff --git a/libavcodec/fraps.c b/libavcodec/fraps.c index 5ca6affa4a..ed8cb180de 100644 --- a/libavcodec/fraps.c +++ b/libavcodec/fraps.c @@ -350,4 +350,5 @@ AVCodec ff_fraps_decoder = { .close = decode_end, .decode = decode_frame, .capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/lcldec.c b/libavcodec/lcldec.c index b1335e1d2f..f5040c6609 100644 --- a/libavcodec/lcldec.c +++ b/libavcodec/lcldec.c @@ -642,6 +642,7 @@ AVCodec ff_mszh_decoder = { .close = decode_end, .decode = decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif @@ -656,5 +657,6 @@ AVCodec ff_zlib_decoder = { .close = decode_end, .decode = decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c index e87c2aa03b..601b8db0aa 100644 --- a/libavcodec/pngdec.c +++ b/libavcodec/pngdec.c @@ -1525,6 +1525,7 @@ AVCodec ff_apng_decoder = { .init_thread_copy = ONLY_IF_THREADS_ENABLED(png_dec_init), .update_thread_context = ONLY_IF_THREADS_ENABLED(update_thread_context), .capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS /*| AV_CODEC_CAP_DRAW_HORIZ_BAND*/, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif @@ -1541,6 +1542,6 @@ AVCodec ff_png_decoder = { .init_thread_copy = ONLY_IF_THREADS_ENABLED(png_dec_init), .update_thread_context = ONLY_IF_THREADS_ENABLED(update_thread_context), .capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS /*| AV_CODEC_CAP_DRAW_HORIZ_BAND*/, - .caps_internal = FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM, + .caps_internal = FF_CODEC_CAP_SKIP_FRAME_FILL_PARAM | FF_CODEC_CAP_INIT_THREADSAFE, }; #endif diff --git a/libavcodec/r210dec.c b/libavcodec/r210dec.c index 9c868cd11c..dbc94c76bd 100644 --- a/libavcodec/r210dec.c +++ b/libavcodec/r210dec.c @@ -104,6 +104,7 @@ AVCodec ff_r210_decoder = { .init = decode_init, .decode = decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif #if CONFIG_R10K_DECODER @@ -115,6 +116,7 @@ AVCodec ff_r10k_decoder = { .init = decode_init, .decode = decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif #if CONFIG_AVRP_DECODER @@ -126,5 +128,6 @@ AVCodec ff_avrp_decoder = { .init = decode_init, .decode = decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif diff --git a/libavcodec/utvideodec.c b/libavcodec/utvideodec.c index 38de2c8cc5..8978a5394a 100644 --- a/libavcodec/utvideodec.c +++ b/libavcodec/utvideodec.c @@ -32,6 +32,7 @@ #include "bswapdsp.h" #include "bytestream.h" #include "get_bits.h" +#include "internal.h" #include "thread.h" #include "utvideo.h" @@ -941,4 +942,5 @@ AVCodec ff_utvideo_decoder = { .close = decode_end, .decode = decode_frame, .capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/v408dec.c b/libavcodec/v408dec.c index acff95d6bb..196c575c09 100644 --- a/libavcodec/v408dec.c +++ b/libavcodec/v408dec.c @@ -88,6 +88,7 @@ AVCodec ff_ayuv_decoder = { .init = v408_decode_init, .decode = v408_decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif #if CONFIG_V408_DECODER @@ -99,5 +100,6 @@ AVCodec ff_v408_decoder = { .init = v408_decode_init, .decode = v408_decode_frame, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; #endif diff --git a/libavcodec/vble.c b/libavcodec/vble.c index 4a07ab3fa5..c25ee98697 100644 --- a/libavcodec/vble.c +++ b/libavcodec/vble.c @@ -215,4 +215,5 @@ AVCodec ff_vble_decoder = { .decode = vble_decode_frame, .capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS, .init_thread_copy = ONLY_IF_THREADS_ENABLED(vble_decode_init), + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, }; diff --git a/libavcodec/zerocodec.c b/libavcodec/zerocodec.c index 55a9a9173a..e67eee4f7d 100644 --- a/libavcodec/zerocodec.c +++ b/libavcodec/zerocodec.c @@ -149,4 +149,5 @@ AVCodec ff_zerocodec_decoder = { .decode = zerocodec_decode_frame, .close = zerocodec_decode_close, .capabilities = AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE, };