Commit Graph

11784 Commits

Author SHA1 Message Date
Lynne c982376076 vulkan: extend ff_vk_shader_rep_fmt to be useful for bitexactness
The original either reported 8 or 16-bit conversion from the
original, rather than being able to return the actual original.

This makes it usable in a situation where preserving exactness
is required.
2024-10-11 23:54:18 +02:00
Niklas Haas bed919efaa avfilter/src_movie: configure correct YUV attributes
Missed by the YUV negotiation series.
2024-10-07 19:51:34 +02:00
James Almer 362586fcad avfilter/vf_xpsnr: remove duplicated DSP infranstructure
Fully reuse the existing one from vf_psnr, instead of halfways.

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-07 09:33:52 -03:00
Anton Khirnov 26ae8d1891 lavfi/avfilter: drop ff_ prefixes from static functions 2024-10-07 10:53:13 +02:00
Anton Khirnov d3739dcbec lavfi/avfilter: make ff_inlink_evaluate_timeline_at_frame() static
It is not used outside of avfilter.c
2024-10-07 10:53:13 +02:00
Anton Khirnov 6647e57dcb lavfi/avfilter: document AVFilterContext.is_disabled as private
Ideally there should be three parts to the filter context - public,
private to the filter, and private to generic code, but only the first
and the last of these exist currently. Until the second is implemented,
this is better than nothing.
2024-10-07 10:53:13 +02:00
Anton Khirnov 4472bddb18 lavfi/avfilter: move AVFilterContext.command_queue to FFFilterContext
It is private to generic filtering code.
2024-10-07 10:53:09 +02:00
Anton Khirnov 71f176e3ce lavfi/avfilter: move AVFilterContext.{enable,var_values} to FFFilterContext
They are private to generic filtering code.
2024-10-07 10:52:48 +02:00
Anton Khirnov b1247e7c1f lavfi/avfilter: move AVFilterContext.ready to FFFilterContext
This field is private to the generic filtering code.
2024-10-07 10:47:18 +02:00
Anton Khirnov e0eec71a13 lavfi/vf_geq: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov a81061b911 lavfi/vf_hwmap: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov eb0c9670b4 lavfi/vf_format: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov cfbb6e9f5d lavfi/vf_fieldorder: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov 977059718b lavfi/vf_fieldmatch: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov 4863570d49 lavfi/vf_fieldhint: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov 637b242ec3 lavfi/vf_feedback: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov 4011304102 lavfi/vf_fade: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov 2161abaecf lavfi/vf_elbg: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov f59c1b8a0c lavfi/vf_edgedetect: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov 87a619c549 lavfi/vf_drawtext: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov 9ebdaa6c7d lavfi/vf_detelecine: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov f8574da8e5 lavfi/vf_deband: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov eff406f5dd lavfi/vf_datascope: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov a92052cb97 lavfi/vf_crop: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov da8cc791e2 lavfi/vf_copy: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov bc418fd872 lavfi/vf_colorspace: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov 631e5bcdc7 lavfi/vf_ciescope: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov 95c9c1c2be lavfi/vf_boxblur: switch to query_func2() 2024-10-07 10:46:43 +02:00
Anton Khirnov 7ab1ddbaf3 lavfi/vf_alphamerge: switch to query_func2()
Simplify the implementation by using the fact that ff_set_common_*()
will ignore those links on which the formats have already been set.
2024-10-07 10:46:43 +02:00
Lynne 73d2cb1c2b nlmeans_vulkan: remove unused forward declaration 2024-10-06 01:32:46 +02:00
Lynne e3d3ee516a bwdif_vulkan: split off main shader code as a separate file
The code to support this was still there, may as well use it.
2024-10-06 01:32:46 +02:00
Lynne 6756136c92 libavfilter/Makefile: fix tag for Vulkan .comp files 2024-10-06 01:32:46 +02:00
Lynne 0a1f8107bb vulkan: move SPIR-V compilation code to libavutil
The code is not currently used by libavutil, its just where our
common Vulkan code is.
Since SPIR-V compilation will be needed by lavc, move it, rather
than having lavc including lavfi.
2024-10-06 01:21:44 +02:00
Lynne 4c88186d5d lavfi/vulkan: remove redundant header 2024-10-06 01:21:41 +02:00
Lynne a304cbeb8d vulkan: add profiling debug setting
This simply keeps all shader optimizations, but allows debug
data to be generated.
2024-10-04 10:10:46 +02:00
Lynne 832947be02 vulkan: don't enable GL_EXT_buffer_reference by default
Only nlmeans_vulkan uses it.
2024-10-04 10:10:45 +02:00
Lynne 2bb0b6dd2c vulkan_shaderc: add more stages, target Vulkan 1.3 and only output debug if needed 2024-10-04 10:10:45 +02:00
Lynne a2a983e1d0 vulkan_glslang: add more stages, target Vulkan 1.3 and output debug info 2024-10-04 10:10:45 +02:00
Lynne 0bc4e03322 lavfi/*vulkan: forward FFVulkanContext to SPIR-V compilers
We need to know what extensions are supported.
2024-10-04 10:10:44 +02:00
Lynne 356d1cc8ff vulkan: parse instance list and add the DEBUG_UTILS extension
Required to let users know whether debugging is active.
2024-10-04 10:10:44 +02:00
Lynne 37d5cb84e8 vulkan: check if current buffer has finished execution before picking another
This saves resources, as dependencies are freed/reclaimed with a lower latency,
and provies a speedup.
2024-10-04 10:10:42 +02:00
Lynne 0a37d5a3b1 vulkan: merge FFVkSPIRVShader and FFVkPipeline into FFVkShader
Pipelines are just shaders. There's no reason to treat them
differently.
This also lets us implement shader objects and is an overall
cleanup.
2024-10-04 10:10:36 +02:00
Anton Khirnov aad4d5745d lavfi/vsrc_testsrc: switch to query_func2() 2024-10-04 10:03:34 +02:00
Anton Khirnov 28bde4a141 lavfi/vaf_spectrumsynth: switch to query_func2() 2024-10-04 10:03:34 +02:00
Anton Khirnov 3824ee2faf lavfi/vf_stack_{vaapi,qsv}: replace query_formats with a pixfmt list 2024-10-04 10:03:34 +02:00
Anton Khirnov 014a4214a9 lavfi/src_movie: switch to query_func2() 2024-10-04 10:03:34 +02:00
Anton Khirnov 55c99fb9c4 lavfi/src_avsynctest: switch to query_func2() 2024-10-04 10:03:34 +02:00
Anton Khirnov 534eef2ace lavfi/qrencode: switch to query_func2() 2024-10-04 10:03:34 +02:00
Anton Khirnov f10986a5ec lavfi/f_streamselect: drop useless query_formats() callback
It achieves the same effect as ff_default_query_formats(), which gets
called implicitly.
2024-10-04 10:03:34 +02:00
Anton Khirnov a6f579544a lavfi/f_select: switch to query_func2()
Also, drop redundant calls that also happen implicitly in generic code.
2024-10-04 10:03:34 +02:00