Commit Graph

11899 Commits

Author SHA1 Message Date
Anton Khirnov 92981320b3 lavfi/vf_libplacebo: convert to query_func2()
Drop a redundant error message for out_format, as it is already
validated in init.
2024-10-15 10:39:14 +02:00
Anton Khirnov 8160178dfc lavfi/vf_libplacebo: move vulkan initialization to init
avfilter API requires all the filter parameters, including hw context
(if present) to be available during init, so that is the proper place to
perform such setup.
2024-10-15 10:39:14 +02:00
Anton Khirnov c4822228b0 lavfi/vf_il: switch to query_func2() 2024-10-15 10:39:13 +02:00
Anton Khirnov 6929fc8845 lavfi/vf_hwupload_cuda: switch to query_func2() 2024-10-15 10:39:13 +02:00
Anton Khirnov 848256677d lavfi/vf_hwupload: switch to query_func2() 2024-10-15 10:39:13 +02:00
Anton Khirnov 036336296c lavfi/vf_hwupload: validate the hw device in init
Rather than query_formats(). Init is a more appropriate place, as
query_formats() is supposed to be free of side-effects.
2024-10-15 10:39:13 +02:00
Anton Khirnov 01458a0c8f lavfi/vf_hwdownload: switch to query_func2() 2024-10-15 10:39:13 +02:00
Anton Khirnov 6db8279325 lavfi/vf_hflip: switch to query_func2() 2024-10-15 10:39:13 +02:00
Anton Khirnov d26ef934f3 lavfi/vf_frei0r: switch to query_func2() 2024-10-15 10:39:13 +02:00
James Almer 3827233187 avfilter/vsrc_testsrc: add missing alpha plane define
"A" was never being defined if yuvtestsrc was enabled but rgbtestsrc disabled.

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-14 12:03:24 -03:00
James Almer f2853002dd avfilter/vsrc_testsrc: add support for packed YUV formats in yuvtestsrc
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-13 20:54:07 -03:00
James Almer 667e22e85d avfilter/vsdc_testsrc: simplify yuvtest_fill_picture
Copy what's done for rgbtest_fill_picture.
It will be useful for the following commit.

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-13 20:54:07 -03:00
Nicolas Gaullier de976eaf30 avfilter/framesync: fix forward EOF pts
Note1: when the EOF pts is not accurate enough, the last frame
can be dropped by vf_fps with default rounding.

Note2: vf_scale use framesync since e82a3997cd,
so this is a very commonplace scenario.

For example:
./ffprobe -f lavfi testsrc=d=1,scale,fps -of flat \
  -count_frames -show_entries stream=nb_read_frames

Before:
streams.stream.0.nb_read_frames="24"

After:
streams.stream.0.nb_read_frames="25"

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2024-10-13 13:54:03 +02:00
Thomas Guillory 37863b92b7 libavfilter/vf_overlay: fix the displayed flags in CLI documentation
When displaying help for overlay filter in CLI, the flags for x and y
parameters don't have the T flag. However these two parameters do have
the capability to be set at runtime, as implemented in commit
d2752ef061. This commit fixes the CLI documentation.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2024-10-13 13:43:06 +02:00
Marvin Scholz 7e1d72589e avfilter/af_afftdn: use av_assert0 for unreachable assert
This is unreachable anyway so performance is not an issue here. Allows
guiding the compiler in all build modes to not emit a spurious warning
here:

  warning: variable 'mag' is used uninitialized whenever switch default is taken
2024-10-13 02:15:31 +02:00
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