ffmpeg/libavutil
Zhao Zhili baf3123c1c avutil/executor: Allowing thread_count be zero
Before the patch, disable threads support at configure/build time
was the only method to force zero thread in executor. However,
it's common practice for libavcodec to run on caller's thread when
user specify thread number to one. And for WASM environment, whether
threads are supported needs to be detected at runtime. So executor
should support zero thread at runtime.

A single thread executor can be useful, e.g., to handle network
protocol. So we can't take thread_count one as zero thread, which
disabled a valid usercase.

Other libraries take -threads 0 to mean auto. Executor as a low
level utils doesn't do cpu detect. So take thread_count zero as
zero thread, literally.

Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
2024-06-27 20:54:42 +08:00
..
aarch64 aarch64: Add OpenBSD runtime detection of dotprod and i8mm using sysctl 2024-06-26 02:06:53 -04:00
arm lavu/arm: remove GCC 4.6- stuff 2024-06-13 21:16:16 +03:00
loongarch
mips configure: Remove av_restrict 2024-03-15 12:51:15 +01:00
ppc avutil/ppc/cpu: Also use the machdep.altivec sysctl on NetBSD 2024-05-18 07:38:40 -04:00
riscv avutil/riscv/cpu: fix __riscv_v_min_vlen typo 2024-06-26 12:50:02 +02:00
tests avutil/tests/opt: Check av_set_options_string() for failure 2024-05-28 03:48:05 +02:00
x86 avutil/common: assert that bit position in av_zero_extend is valid 2024-06-13 20:36:09 -03:00
.gitignore
adler32.c
adler32.h
aes_ctr.c
aes_ctr.h
aes_internal.h
aes.c
aes.h
ambient_viewing_environment.c avutil/ambient_viewing_environment: set a sane default value for AVRational fields 2024-06-20 17:02:50 -03:00
ambient_viewing_environment.h
attributes_internal.h
attributes.h
audio_fifo.c avutil/audio_fifo: Constify some pointees 2023-09-12 09:20:13 +02:00
audio_fifo.h avutil/audio_fifo: Constify some pointees 2023-09-12 09:20:13 +02:00
avassert.h
avsscanf.c
avstring.c avutil/avstring: Use proper types 2024-03-10 13:51:37 +01:00
avstring.h avutil/avstring: Remove obsolete version.h inclusion 2023-09-07 00:48:50 +02:00
avutil.h avutil: remove deprecated FF_API_AV_FOPEN_UTF8 2024-03-07 08:53:30 -03:00
avutilres.rc
base64.c libavutil/base64: Try not to write over the array end 2024-05-13 03:26:57 +02:00
base64.h
blowfish.c
blowfish.h
bprint.c
bprint.h fix "param"s that should be "@param" 2024-03-04 17:45:00 +01:00
bswap.h lavu/bswap: remove some inline assembler 2024-06-13 21:16:16 +03:00
buffer_internal.h
buffer.c
buffer.h
camellia.c
camellia.h
cast5.c
cast5.h
channel_layout.c channel_layout: add new channel positions supported by xHE-AAC 2024-06-02 18:34:38 +02:00
channel_layout.h channel_layout: add new channel positions supported by xHE-AAC 2024-06-02 18:34:38 +02:00
colorspace.h
common.h lavu/common.h: Fix UB in av_clip_uintp2_c() 2024-06-14 14:28:25 +02:00
cpu_internal.h
cpu.c lavu/riscv: CPU flag for fast misaligned accesses 2024-05-14 19:50:00 +03:00
cpu.h lavu/riscv: CPU flag for fast misaligned accesses 2024-05-14 19:50:00 +03:00
crc.c
crc.h
csp.c
csp.h
cuda_check.h
des.c
des.h
detection_bbox.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
detection_bbox.h
dict_internal.h
dict.c avutil/dict: Deduplicate freeing dictionary 2024-03-08 01:01:49 +01:00
dict.h
display.c
display.h
dovi_meta.c avutil/dovi_meta: add dolby vision extension blocks 2024-04-03 16:16:25 +02:00
dovi_meta.h avutil/dovi_meta: add fields for ext_mapping_idc 2024-06-22 15:48:23 +02:00
downmix_info.c
downmix_info.h
dynarray.h
emms.h
encryption_info.c avutil/mem: Don't include avutil.h 2023-09-07 00:42:10 +02:00
encryption_info.h
error.c avutil/error: Add HTTP 429 Too Many Requests AVERROR code 2024-04-25 14:13:47 +01:00
error.h avutil/error: Add HTTP 429 Too Many Requests AVERROR code 2024-04-25 14:13:47 +01:00
eval.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
eval.h apply spelling fixes 2023-11-18 19:55:42 +01:00
executor.c avutil/executor: Allowing thread_count be zero 2024-06-27 20:54:42 +08:00
executor.h avutil/executor: Allowing thread_count be zero 2024-06-27 20:54:42 +08:00
ffmath.h
fifo.c avutil: remove deprecated FF_API_FIFO_OLD_API 2024-03-07 08:53:30 -03:00
fifo.h avutil/fifo, file: Remove unused headers 2024-03-27 17:07:22 +01:00
file_open.c avutil: remove deprecated FF_API_AV_FOPEN_UTF8 2024-03-07 08:53:30 -03:00
file_open.h
file.c avutil: remove deprecated FF_API_AV_FOPEN_UTF8 2024-03-07 08:53:30 -03:00
file.h avutil/fifo, file: Remove unused headers 2024-03-27 17:07:22 +01:00
film_grain_params.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
film_grain_params.h avutil/film_grain_params: add av_film_grain_params_select() 2024-03-23 18:55:15 +01:00
fixed_dsp.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
fixed_dsp.h configure: Remove av_restrict 2024-03-15 12:51:15 +01:00
float2half.c
float2half.h
float_dsp.c lavu/float_dsp: add double-precision scalar product 2024-05-31 22:22:43 +03:00
float_dsp.h avutil/float_dsp.h: fix doxy for scalarproduct_double 2024-06-01 11:15:30 -03:00
frame.c avutil/frame: free the old side data buffer before replacing it 2024-04-11 12:32:13 -03:00
frame.h avutil/frame: remove comment about avcodec_get_frame_class() 2024-04-18 12:24:43 -03:00
getenv_utf8.h
half2float.c
half2float.h
hash.c avutil/hash: Avoid relocations for hash names 2024-03-18 01:48:46 +01:00
hash.h
hdr_dynamic_metadata.c
hdr_dynamic_metadata.h fix "@param foo[in/out]" to "@param[in, out] foo" 2024-03-04 17:45:12 +01:00
hdr_dynamic_vivid_metadata.c
hdr_dynamic_vivid_metadata.h
hmac.c avutil/mem: Don't include avutil.h 2023-09-07 00:42:10 +02:00
hmac.h
hwcontext_cuda_internal.h
hwcontext_cuda.c avutil/hwcontext: Allocate AVHWFramesCtx jointly with its internals 2024-03-07 08:53:31 -03:00
hwcontext_cuda.h avutil/hwcontext_cuda: add option to use current device context 2023-09-28 19:23:51 +02:00
hwcontext_d3d11va.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
hwcontext_d3d11va.h
hwcontext_d3d12va_internal.h libavutil: add hwcontext_d3d12va and AV_PIX_FMT_D3D12 2023-12-21 16:15:23 +08:00
hwcontext_d3d12va.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
hwcontext_d3d12va.h libavutil: add hwcontext_d3d12va and AV_PIX_FMT_D3D12 2023-12-21 16:15:23 +08:00
hwcontext_drm.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
hwcontext_drm.h
hwcontext_dxva2.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
hwcontext_dxva2.h
hwcontext_internal.h avutil/hwcontext: Allocate AVHWFramesCtx jointly with its internals 2024-03-07 08:53:31 -03:00
hwcontext_mediacodec.c
hwcontext_mediacodec.h
hwcontext_opencl.c avutil/hwcontext: Allocate AVHWFramesCtx jointly with its internals 2024-03-07 08:53:31 -03:00
hwcontext_opencl.h
hwcontext_qsv.c qsv: Initialize impl_value 2024-05-28 03:48:04 +02:00
hwcontext_qsv.h lavu/hwcontext_qsv: update AVQSVFramesContext to support dynamic frame pool 2024-05-20 09:30:48 +08:00
hwcontext_stub.c
hwcontext_vaapi.c lavu/hwcontext_vaapi: Use vaMapBuffer2 for mapping image buffers 2024-04-29 11:08:41 +08:00
hwcontext_vaapi.h
hwcontext_vdpau.c avutil/hwcontext: Allocate AVHWFramesCtx jointly with its internals 2024-03-07 08:53:31 -03:00
hwcontext_vdpau.h
hwcontext_videotoolbox.c avutil/hwcontext: Allocate AVHWFramesCtx jointly with its internals 2024-03-07 08:53:31 -03:00
hwcontext_videotoolbox.h avutil/hwcontext_videotoolbox: add frame hwctx to specify color range 2024-01-04 17:31:49 +08:00
hwcontext_vulkan.c lavu/hwcontext_vulkan: Support write on drm frame 2024-06-12 01:53:18 +02:00
hwcontext_vulkan.h avutil/hwcontext_vulkan: Include hwcontext.h 2024-03-31 00:08:43 +01:00
hwcontext.c avutil/hwcontext: Allocate AVHWFramesCtx jointly with its internals 2024-03-07 08:53:31 -03:00
hwcontext.h avutil/hwcontext: Allocate AVHWFramesCtx jointly with its internals 2024-03-07 08:53:31 -03:00
iamf.c avutil/iamf: use AV_OPT_TYPE_UINT 2024-05-04 21:31:33 -03:00
iamf.h avutil/iamf: add some more doxy to structs 2024-01-15 18:16:07 -03:00
imgutils_internal.h avutil/internal: Move avpriv_set_systematic_pal2 decl to imgutils_internal.h 2024-03-31 00:08:43 +01:00
imgutils.c avutil/internal: Move avpriv_set_systematic_pal2 decl to imgutils_internal.h 2024-03-31 00:08:43 +01:00
imgutils.h avutil/imgutils: add new function av_image_fill_color() 2023-12-13 18:51:32 +01:00
integer.c
integer.h
internal.h avutil/internal: Move avpriv_set_systematic_pal2 decl to imgutils_internal.h 2024-03-31 00:08:43 +01:00
intfloat.h
intmath.c
intmath.h lavu/intmath.h: Fix UB in ff_ctz_c() and ff_ctzll_c() 2024-06-14 14:28:25 +02:00
intreadwrite.h avr32: remove explicit support 2024-06-14 21:28:10 +03:00
lfg.c
lfg.h
libavutil.v
libm.h
lls.c lavu/lls: R-V V update_lls 2024-06-01 18:05:58 +03:00
lls.h lavu/lls: R-V V update_lls 2024-06-01 18:05:58 +03:00
log2_tab.c
log.c lavu/log: do not assume AVClass.item_name is always set 2023-11-09 11:25:17 +01:00
log.h
lzo.c
lzo.h
macos_kperf.c avutil/macos_kperf: Fix assert which makes kperf failed to run 2024-06-18 15:24:12 +08:00
macos_kperf.h
macros.h
Makefile avutil/timestamp: introduce av_ts_make_time_string2 for better precision 2024-03-25 21:30:51 +01:00
mastering_display_metadata.c avutil/mastering_display_metadata: set a sane default value for AVRational fields 2024-06-20 17:02:50 -03:00
mastering_display_metadata.h avutil/mastering_display_metadata: add a new allocator function that returns a size 2024-04-11 11:46:18 -03:00
mathematics.c
mathematics.h
md5.c avutil/mem: Don't include avutil.h 2023-09-07 00:42:10 +02:00
md5.h
mem_internal.h avutil/mem_internal: Remove unneeded headers 2024-03-01 01:35:42 +01:00
mem.c avutil/internal: Move FF_MEMORY_POISON to its only user 2024-03-31 00:08:43 +01:00
mem.h avutil/mem: Don't include avutil.h 2023-09-07 00:42:10 +02:00
motion_vector.h
murmur3.c avutil/mem: Don't include avutil.h 2023-09-07 00:42:10 +02:00
murmur3.h
objc.h
opt.c avutil/opt: free the temporary layout in av_opt_is_set_to_default() 2024-05-07 20:11:42 -03:00
opt.h avutil/opt: add a note about the av_opt_{get,set}_chlayout() behavior 2024-05-07 20:11:42 -03:00
parseutils.c
parseutils.h
pca.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
pca.h
pixdesc.c avutil/pix{desc,fmt}: add new matrix coefficients from H.273 v3 2024-04-03 21:31:35 +03:00
pixdesc.h avutil/pixdesc: add AV_PIX_FMT_FLAG_XYZ 2023-10-31 15:46:07 +01:00
pixelutils.c
pixelutils.h
pixfmt.h avutil/pix{desc,fmt}: add new matrix coefficients from H.273 v3 2024-04-03 21:31:35 +03:00
qsort.h
random_seed.c avutil/random_seed: Avoid dead returns 2024-05-28 03:48:05 +02:00
random_seed.h
rational.c avutil/rational: increase av_d2q precision 2024-02-04 20:04:18 +01:00
rational.h avutil/rational: Document what is to be expected from av_d2q() of doubles representing rational numbers 2024-02-12 00:50:46 +01:00
rc4.c
rc4.h
replaygain.h
reverse.c
reverse.h
ripemd.c
ripemd.h
samplefmt.c avutil/samplefmt: Constify some pointees 2023-09-12 09:17:28 +02:00
samplefmt.h avutil/samplefmt: Constify some pointees 2023-09-12 09:17:28 +02:00
sfc64.h avutil/eval: Use even better PRNG 2024-01-16 01:34:57 +01:00
sha512.c
sha512.h
sha.c
sha.h
slicethread.c
slicethread.h
softfloat_ieee754.h
softfloat_tables.h
softfloat.h
spherical.c avutil/spherical: Add more spherical types 2024-06-18 14:47:40 +01:00
spherical.h avutil/spherical: Add more spherical types 2024-06-18 14:47:40 +01:00
stereo3d.c avutil/stereo3d: add a new allocator function that returns a size 2024-06-25 00:01:05 -03:00
stereo3d.h avutil/stereo3d: add a new allocator function that returns a size 2024-06-25 00:01:05 -03:00
tablegen.h
tea.c
tea.h
thread.h avutil/thread: fix pthread_setname_np parameters for NetBSD and Apple 2024-02-05 09:42:30 +01:00
threadmessage.c avutil/mem: Don't include avutil.h 2023-09-07 00:42:10 +02:00
threadmessage.h
time_internal.h
time.c
time.h
timecode.c avformat/timecode: use 64bit for intermediate for rounding in fps_from_frame_rate() 2024-03-26 23:25:38 +01:00
timecode.h libavutil/timecode: fix parameter order in documentation 2024-01-14 14:58:57 +01:00
timer.h avutil/timer: Fix missing header for mach_absolute_time 2024-06-18 15:24:02 +08:00
timestamp.c avutil/timestamp: introduce av_ts_make_time_string2 for better precision 2024-03-25 21:30:51 +01:00
timestamp.h avutil/timestamp: change precision of av_ts_make_time_string() 2024-03-25 21:30:51 +01:00
tree.c
tree.h
twofish.c
twofish.h
tx_double.c
tx_float.c
tx_int32.c
tx_priv.h avutil/mem: Don't include avutil.h 2023-09-07 00:42:10 +02:00
tx_template.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
tx.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
tx.h
utils.c
uuid.c
uuid.h
version_major.h
version.c lib*/version: Use static_assert for static asserts 2024-03-31 00:08:42 +01:00
version.h avutil/stereo3d: add a new allocator function that returns a size 2024-06-25 00:01:05 -03:00
video_enc_params.c
video_enc_params.h avutil/video_enc_params: fix doxy for av_video_enc_params_block() 2023-10-30 10:30:05 -03:00
video_hint.c
video_hint.h
vulkan_functions.h vulkan_av1: port to the new stable API 2024-03-25 08:54:40 +01:00
vulkan_loader.h vulkan_av1: port to the new stable API 2024-03-25 08:54:40 +01:00
vulkan.c avutil/common: Don't auto-include mem.h 2024-03-31 00:08:43 +01:00
vulkan.h avutil/vulkan: Remove unused ff_vk_set_descriptor_sampler() 2024-03-03 22:56:25 +01:00
wchar_filename.h avutil/mem: Don't include avutil.h 2023-09-07 00:42:10 +02:00
xga_font_data.c
xga_font_data.h
xtea.c
xtea.h