FFmpeg/libavutil
Lynne b5eaeb1f13
vulkan: rewrite to support all necessary features
This commit rewrites the majority of vulkan.c to enable its use
as a general-purpose high-level utility code, usable for decoding,
encoding, and filtering of video frames.

The dependency system was rewritten to simplify management of
execution.

The image handling system was rewritten to accomodate multiplane
images.

Due to how related all the new features were, this is a single
commit.
2023-05-29 00:41:48 +02:00
..
aarch64 lavu/tx: refactor to explicitly track and convert lookup table order 2022-11-24 15:58:34 +01:00
arm arm: relax byte-swap assembler constraints 2022-09-03 23:54:05 +03:00
avr32
bfin
loongarch avutil/la: Add function performance testing 2023-05-25 21:05:21 +02:00
mips mips: fix build fail on MIPS R6 2023-03-26 01:46:39 +01:00
ppc avutil/ppc/cpu: Use proper header for OpenBSD PPC CPU detection 2022-06-25 12:16:51 +02:00
riscv riscv/intmath: use builtins for counting ones 2023-05-02 22:08:25 +02:00
sh4
tests lavu/hwcontext_vaapi: Add Windows/VAAPI support with vaGetDisplayWin32 2023-04-24 13:24:41 +08:00
tomi
x86 x86: replace explicit REP_RETs with RETs 2023-02-01 04:23:55 +01:00
.gitignore
adler32.c
adler32.h
aes_ctr.c
aes_ctr.h avutil/aes_ctr: document some missing arguments 2022-10-17 09:56:47 +02:00
aes_internal.h
aes.c avutil/aes: Don't use out-of-bounds index 2022-10-24 16:28:14 +02:00
aes.h avutil/aes: document some missing arguments 2022-10-17 09:56:47 +02:00
ambient_viewing_environment.c avutil: introduce AVAmbientViewingEnvironment side data 2023-01-13 21:26:13 +02:00
ambient_viewing_environment.h avutil: introduce AVAmbientViewingEnvironment side data 2023-01-13 21:26:13 +02:00
attributes_internal.h avutil/attributes_internal: Add visibility pragma 2022-10-10 13:43:59 +02:00
attributes.h avutil/attributes: add support for clang in AV_NOWARN_DEPRECATED 2022-03-16 12:29:37 -03:00
audio_fifo.c
audio_fifo.h
avassert.h
avsscanf.c
avstring.c avutil: remove FF_API_D2STR 2023-02-09 15:35:14 +01:00
avstring.h avutil: remove FF_API_D2STR 2023-02-09 15:35:14 +01:00
avutil.h libavutil: Deprecate av_fopen_utf8, provide an avpriv version 2022-05-23 13:52:26 +03:00
avutilres.rc
base64.c
base64.h
blowfish.c
blowfish.h
bprint.c
bprint.h avutil/bprint: Improve doxy documentation 2022-10-17 09:55:19 +02:00
bswap.h lavu/riscv: byte-swap operations 2022-09-13 16:50:43 -03:00
buffer_internal.h
buffer.c avutil/buffer: Never poison returned buffers 2022-08-10 18:49:35 +02:00
buffer.h
camellia.c
camellia.h avutil/camellia: Fix doxy @param typo 2022-10-17 09:55:19 +02:00
cast5.c avutil/cast5: Avoid undefined shift of uint32_t by 32 places 2022-11-11 12:24:23 +01:00
cast5.h
channel_layout.c avutil/channel_layout: add a 7.1(top) channel layout 2022-11-03 19:39:45 -03:00
channel_layout.h avutil/channel_layout: add a 7.1(top) channel layout 2022-11-03 19:39:45 -03:00
colorspace.h
common.h
cpu_internal.h lavu/cpu: detect RISC-V base extensions 2022-09-27 13:19:52 +02:00
cpu.c lavu/riscv: CPU flag for the Zbb extension 2022-10-05 08:26:19 +02:00
cpu.h lavu/riscv: CPU flag for the Zbb extension 2022-10-05 08:26:19 +02:00
crc.c
crc.h avutil/crc: Add doxy for missing arguments 2022-10-17 09:56:47 +02:00
csp.c avutil/{color_utils, csp}: merge color_utils into csp and expose API 2023-02-09 15:35:14 +01:00
csp.h avutil/{color_utils, csp}: merge color_utils into csp and expose API 2023-02-09 15:35:14 +01:00
cuda_check.h
des.c
des.h avutil/des: Add doxy for missing arguments 2022-10-17 09:56:47 +02:00
detection_bbox.c
detection_bbox.h avutil/detection_bbox: Add doxy for missing argument 2022-10-17 09:56:47 +02:00
dict_internal.h avutil/dict: Move avpriv_dict_set_timestamp() to a header of its own 2022-09-03 15:41:44 +02:00
dict.c avutil/dict: Use av_dict_iterate in av_dict_get_string 2022-11-06 08:26:50 +01:00
dict.h avutil/dict: Improve documentation 2022-11-06 08:26:50 +01:00
display.c
display.h avutil/display: Add file to doxy group 2022-10-17 09:55:19 +02:00
dovi_meta.c
dovi_meta.h
downmix_info.c
downmix_info.h
dynarray.h
encryption_info.c
encryption_info.h
error.c
error.h
eval.c
eval.h avutil/eval: Add doxy for missing arguments 2022-10-17 09:56:47 +02:00
ffmath.h
fifo.c
fifo.h lavu/fifo: clarify interaction of AV_FIFO_FLAG_AUTO_GROW with av_fifo_write() 2022-09-05 08:59:36 +02:00
file_open.c avutil/internal: Move avpriv-file API to a header of its own 2022-09-03 15:41:44 +02:00
file_open.h avutil/internal: Move avpriv-file API to a header of its own 2022-09-03 15:41:44 +02:00
file.c avutil/file: Properly deprecate av_tempfile() 2022-09-03 15:42:40 +02:00
file.h avutil/file: Add doxy for missing arguments 2022-10-17 09:56:47 +02:00
film_grain_params.c
film_grain_params.h
fixed_dsp.c lavu/fixed_dsp: add missing av_restrict qualifiers 2022-10-04 10:56:12 +02:00
fixed_dsp.h lavu/fixeddsp: RISC-V V butterflies_fixed 2022-09-27 13:19:52 +02:00
float2half.c avutil/half2float: use native _Float16 if available 2022-08-19 22:09:36 +02:00
float2half.h avutil/half2float: use native _Float16 if available 2022-08-19 22:09:36 +02:00
float_dsp.c lavu/floatdsp: RISC-V V vector_fmul_scalar 2022-09-27 13:19:52 +02:00
float_dsp.h lavu/floatdsp: RISC-V V vector_fmul_scalar 2022-09-27 13:19:52 +02:00
frame.c avutil/frame: remove one layer of indirection in av_frame_replace() 2023-05-18 11:52:16 -03:00
frame.h avutil/frame: add av_frame_replace 2023-05-18 10:15:59 -03:00
getenv_utf8.h libavutil: Add wchartoutf8(), wchartoansi(), utf8toansi(), getenv_utf8(), freeenv_utf8() and getenv_dup() 2022-06-21 13:27:46 +03:00
half2float.c avutil/half2float: use native _Float16 if available 2022-08-19 22:09:36 +02:00
half2float.h avutil/half2float: use native _Float16 if available 2022-08-19 22:09:36 +02:00
hash.c
hash.h
hdr_dynamic_metadata.c avutil/hdr_dynamic_metadata: allow av_dynamic_hdr_plus_to_t35() to accept an existing buffer 2023-04-05 09:47:12 -03:00
hdr_dynamic_metadata.h avutil/hdr_dynamic_metadata: allow av_dynamic_hdr_plus_to_t35() to accept an existing buffer 2023-04-05 09:47:12 -03:00
hdr_dynamic_vivid_metadata.c
hdr_dynamic_vivid_metadata.h libavutil/hdr_dynamic_vivid_metadata: fix three spline params 2023-03-17 18:51:16 +08:00
hmac.c
hmac.h
hwcontext_cuda_internal.h
hwcontext_cuda.c avutil/hwcontext_cuda: fix compilation without Vulkan after last commit 2022-11-12 15:54:53 -03:00
hwcontext_cuda.h
hwcontext_d3d11va.c hwcontext_d3d11va: add mutiple supported DXGI formats 2023-02-22 12:15:59 +08:00
hwcontext_d3d11va.h
hwcontext_drm.c
hwcontext_drm.h
hwcontext_dxva2.c hwcontext_dxva2: add mutiple supported formats 2023-02-22 12:15:59 +08:00
hwcontext_dxva2.h
hwcontext_internal.h
hwcontext_mediacodec.c avutil/hwcontext_mediacodec: fix backward compatibility 2023-01-26 23:31:37 +08:00
hwcontext_mediacodec.h avutil/hwcontext_mediacodec: fix backward compatibility 2023-01-26 23:31:37 +08:00
hwcontext_opencl.c qsv: remove mfx/ prefix from mfx headers 2022-08-12 10:43:39 +08:00
hwcontext_opencl.h
hwcontext_qsv.c lavu/hwcontext_qsv: Update after adding support for VAAPI on Windows 2023-04-24 13:24:41 +08:00
hwcontext_qsv.h lavu/hwcontext_qsv: add loader field to AVQSVDeviceContext 2022-08-12 10:43:39 +08:00
hwcontext_stub.c )hwcontext: add a stub implementation for Vulkan functions 2022-07-05 15:20:08 +02:00
hwcontext_vaapi.c lavu/hwcontext_vaapi: Add Windows/VAAPI support with vaGetDisplayWin32 2023-04-24 13:24:41 +08:00
hwcontext_vaapi.h
hwcontext_vdpau.c
hwcontext_vdpau.h
hwcontext_videotoolbox.c avutil/hwcontext_videotoolbox: BGRA should be full range 2023-01-11 18:57:20 +08:00
hwcontext_videotoolbox.h avutil/hwcontext_videotoolbox: add missing include for AVFrame 2022-08-08 11:08:55 +08:00
hwcontext_vulkan.c hwcontext_vulkan: enable GPU-assisted validation when debugging 2023-05-29 00:41:41 +02:00
hwcontext_vulkan.h hwcontext_vulkan: remove contiguous memory path/mode 2023-05-29 00:41:37 +02:00
hwcontext.c avutil/hwcontext: verify hw_frames_ctx in transfer_data_alloc 2022-11-21 23:57:03 +08:00
hwcontext.h avutil/hwcontext: Add doxy for missing argument 2022-10-17 09:56:47 +02:00
imgutils_internal.h
imgutils.c
imgutils.h avutil/imgutils: document some missing arguments 2022-10-17 09:56:47 +02:00
integer.c avutil/integer: Use '|' instead of '+' where it is more natural 2022-10-24 20:11:20 +02:00
integer.h
internal.h avutil/internal: remove timer.h again 2023-04-15 04:21:33 +08:00
intfloat.h
intmath.c
intmath.h lavu/riscv: add <intmath.h> optimisations 2022-09-13 16:50:43 -03:00
intreadwrite.h
lfg.c
lfg.h avutil/lfg: Minor doxy improvements 2022-10-17 09:56:47 +02:00
libavutil.v
libm.h
lls.c all: Replace if (ARCH_FOO) checks by #if ARCH_FOO 2022-06-15 04:56:37 +02:00
lls.h
log2_tab.c
log.c
log.h
lzo.c
lzo.h
macos_kperf.c
macos_kperf.h
macros.h
Makefile avutil/{color_utils, csp}: merge color_utils into csp and expose API 2023-02-09 15:35:14 +01:00
mastering_display_metadata.c
mastering_display_metadata.h
mathematics.c
mathematics.h avutil/mathematics: add missing constants 2023-05-19 17:10:58 -03:00
md5.c
md5.h
mem_internal.h avutil: remove FF_API_DECLARE_ALIGNED 2023-02-09 15:35:14 +01:00
mem.c avutil: remove FF_API_AV_MALLOCZ_ARRAY 2023-02-09 15:35:14 +01:00
mem.h avutil: remove FF_API_AV_MALLOCZ_ARRAY 2023-02-09 15:35:14 +01:00
motion_vector.h
murmur3.c
murmur3.h
objc.h
opt.c lavu/opt: use AV_DICT_MULTIKEY in av_opt_set_dict2() 2023-01-31 09:08:03 +01:00
opt.h
parseutils.c
parseutils.h avutil/parseutils: Use inline code and properly escape 2022-10-17 09:56:47 +02:00
pca.c
pca.h
pixdesc.c lavu: add 12-bit 2-plane 422 and 444 pixel formats 2023-05-29 00:41:35 +02:00
pixdesc.h avutil/pixdesc: Add av_chroma_location_(enum_to_pos|pos_to_enum) 2022-09-26 03:02:25 +02:00
pixelutils.c
pixelutils.h
pixfmt.h lavu: add 12-bit 2-plane 422 and 444 pixel formats 2023-05-29 00:41:35 +02:00
qsort.h
random_seed.c avutil/internal: Move avpriv-file API to a header of its own 2022-09-03 15:41:44 +02:00
random_seed.h
rational.c
rational.h avutil: Fix mismatching argument names 2022-10-17 09:51:47 +02:00
rc4.c
rc4.h avutil/rc4: Add doxy for missing arguments 2022-10-17 09:56:47 +02:00
replaygain.h
reverse.c
reverse.h
ripemd.c
ripemd.h
samplefmt.c
samplefmt.h avutil/samplefmt: document missing argument 2022-10-17 09:56:47 +02:00
sha512.c
sha512.h
sha.c
sha.h
slicethread.c slicethread: Limit the automatic number of threads to 16 2022-09-06 18:46:44 +03:00
slicethread.h
softfloat_ieee754.h
softfloat_tables.h
softfloat.h
spherical.c
spherical.h avutil/spherical: Add file to doxy group 2022-10-17 09:55:19 +02:00
stereo3d.c
stereo3d.h avutil/stereo3d: Add file to doxy group 2022-10-17 09:55:19 +02:00
tablegen.h
tea.c
tea.h
thread.h lavu/thread: add an internal function for setting thread name 2022-10-24 02:00:31 +02:00
threadmessage.c
threadmessage.h
time_internal.h
time.c
time.h
timecode.c avutil/timecode: use timecode fps for number of frame digits 2022-04-22 22:54:58 +02:00
timecode.h
timer.h avutil/la: Add function performance testing 2023-05-25 21:05:21 +02:00
timestamp.h
tree.c
tree.h
twofish.c
twofish.h avutil/twofish: Fix doxy @param typo 2022-10-17 09:51:47 +02:00
tx_double.c
tx_float.c
tx_int32.c
tx_priv.h avutil/tx_priv: Use unsigned in BF() to avoid signed overflows 2023-04-22 21:17:07 +02:00
tx_template.c avutil/tx_template: Use more unsigned ints to avoid undefined overflows 2022-12-25 19:33:24 +01:00
tx.c avutil/tx: Use proper deallocator 2022-11-25 15:54:33 +01:00
tx.h lavu/tx: add DCT-II implementation 2022-11-24 15:58:35 +01:00
utils.c lib*/version: Move library version functions into files of their own 2022-05-10 06:49:32 +02:00
uuid.c avutil/uuid: add utility library for manipulating UUIDs as specified in RFC 4122 2022-06-12 18:34:28 +10:00
uuid.h avutil/uuid: Remove bogus doxy return doc 2022-10-17 09:56:47 +02:00
version_major.h Fix libversion.sh for split version headers, to unbreak shared library builds 2022-03-17 11:11:17 +02:00
version.c lib*/version: Move library version functions into files of their own 2022-05-10 06:49:32 +02:00
version.h hwcontext_vulkan: remove contiguous memory path/mode 2023-05-29 00:41:37 +02:00
video_enc_params.c lavu/video_enc_params: Avoid relying on an undefined C construct 2023-01-31 14:22:54 +02:00
video_enc_params.h
vulkan_functions.h vulkan: rewrite to support all necessary features 2023-05-29 00:41:48 +02:00
vulkan_glslang.c
vulkan_loader.h hwcontext_vulkan: add functions for video decoding 2023-05-29 00:41:40 +02:00
vulkan_shaderc.c
vulkan.c vulkan: rewrite to support all necessary features 2023-05-29 00:41:48 +02:00
vulkan.h vulkan: rewrite to support all necessary features 2023-05-29 00:41:48 +02:00
wchar_filename.h avutil/wchar_filename: propagate MultiByteToWideChar() and WideCharToMultiByte() failures 2023-04-14 10:04:47 -03:00
xga_font_data.c
xga_font_data.h
xtea.c
xtea.h