Lynne
57b7e96b04
configure: add spirv_compiler to avfilter_suggest as well
...
If someone were to enable libglslang/libshaderc, and then disable
all Vulkan filters, they would have the same issue as the earlier
fix for libavcodec.
2024-10-09 00:59:27 +02:00
James Almer
29ea34728f
avutil/pixfmt: add V30X pixel format
...
This maps to the 444YpCbCr10 pixel format as defined by Apple.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-08 19:45:10 -03:00
James Almer
1f9424e0b1
avutil/pixfmt: add VYU444 pixel format
...
This maps to the 444YpCbCr8 pixel format as defined by Apple, which is ordered
Cr Y' Cb.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-08 14:10:07 -03:00
James Almer
dc3ef53819
avutil/pixfmt: add UYVA pixel format
...
This maps to the 4444YpCbCrA8 pixel format as defined by Apple, which is ordered
Cb Y' Cr A.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-08 14:10:07 -03:00
James Almer
263108a504
avutil/pixfmt: add AYUV pixel format
...
This maps to the 4444AYpCbCr8 pixel format as defined by Apple, which is ordered
A Y’ Cb Cr.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-08 14:10:07 -03:00
James Almer
2e79690a70
avutil/pixfmt: extend the VUY{A,X} description
...
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-08 14:10:07 -03:00
Niklas Haas
477445722c
swscale/ppc: fix altivec build failure
...
Fixes: c1a0e65763
2024-10-08 16:45:36 +02:00
Martin Storsjö
b9145fcab2
swscale: Fix aarch64 and i386 compilation failures
...
This unbreaks builds after c1a0e65763
,
which broke with errors like
src/libswscale/aarch64/rgb2rgb.c:66:25: error: incompatible function pointer types assigning to 'void (*)(const uint8_t *, uint8_t *, uint8_t *, uint8_t *, int, int, int, int, int, const int32_t *)' (aka 'void (*)(const unsigned char *, unsigned char *, unsigned char *, unsigned char *, int, int, int, int, int, const int *)') from 'void (const uint8_t *, uint8_t *, uint8_t *, uint8_t *, int, int, int, int, int, int32_t *)' (aka 'void (const unsigned char *, unsigned char *, unsigned char *, unsigned char *, int, int, int, int, int, int *)') [-Wincompatible-function-pointer-types]
66 | ff_rgb24toyv12 = rgb24toyv12;
| ^ ~~~~~~~~~~~
and
src/libswscale/aarch64/swscale_unscaled.c:213:29: error: incompatible function pointer types assigning to 'SwsFunc' (aka 'int (*)(struct SwsContext *, const unsigned char *const *, const int *, int, int, unsigned char *const *, const int *)') from 'int (SwsContext *, const uint8_t *const *, const int *, int, int, const uint8_t **, const int *)' (aka 'int (struct SwsContext *, const unsigned char *const *, const int *, int, int, const unsigned char **, const int *)') [-Wincompatible-function-pointer-types]
213 | c->convert_unscaled = nv24_to_yuv420p_neon_wrapper;
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Signed-off-by: Martin Storsjö <martin@martin.st>
2024-10-08 09:29:07 +03:00
Niklas Haas
73b3344edd
swscale/input: parametrize ff_sws_init_input_funcs() pointers
...
Following the precedent set by ff_sws_init_output_funcs().
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
2024-10-07 19:51:34 +02:00
Niklas Haas
20b350b284
swscale/internal: add typedefs for input reading functions
...
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
2024-10-07 19:51:34 +02:00
Niklas Haas
b90d522d2c
swscale/internal: forward typedef SwsContext
...
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
2024-10-07 19:51:34 +02:00
Niklas Haas
c1a0e65763
swscale/internal: constify SwsFunc
...
I want to move away from having random leaf processing functions mutate
plane pointers, and while we're at it, we might as well make the strides
and tables const as well.
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
2024-10-07 19:51:34 +02:00
Niklas Haas
286bdc9cdc
swscale/internal: turn cascaded_tmp into an array
...
Slightly more convenient to access from the new wrapping code.
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
2024-10-07 19:51:34 +02:00
Niklas Haas
61369484f6
swscale/internal: expose ff_update_palette() internally
...
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
2024-10-07 19:51:34 +02:00
Niklas Haas
aee19ee431
swscale/internal: rename NB_SWS_DITHER for consistency
...
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
2024-10-07 19:51:34 +02:00
Niklas Haas
41ce370b65
tests/swscale: fix minor typos
...
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
2024-10-07 19:51:34 +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
496b8d7a13
fftools/ffmpeg_filter: stop setting a no-op option
2024-10-07 10:53:13 +02: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
Anton Khirnov
a2881814b8
doc/ffmpeg.texi: add a diagram for the loopback decoder example
2024-10-07 10:45:10 +02:00
Anton Khirnov
794308c61b
doc/ffmpeg: rewrite the detailed description chapter
...
Split it into sections that describe in detail
* the components of the transcoding pipeline
* the main features it handles, in order of complexity
* streamcopy
* transcoding
* filtering
Replace the current confusing/misleading diagrams with new ones that
actually reflect the program components and data flow between them.
2024-10-07 10:45:07 +02:00
Lynne via ffmpeg-devel
f339169f35
configure: add spirv_compiler to avcodec_suggest
...
893f3fde4c
made libavcodec link to libshaderc/libglslang, though
no codecs depend on it at this immediate moment.
This was merged largely as a coordination effort to synchronize three
different developers' repositories to allow them to send patches without
overlapping functionality in between.
This line can be removed once the first component to depend on spirv_compiler
lands, but leaving it in is fine too.
2024-10-06 21:11:05 +02:00
James Almer
a77365d864
configure: include liblcevc_dec ldflags in avcodec_extralibs
...
This is more in line with other optional libraries, instead of littering avcodec_suggest.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-06 10:42:15 -03:00
Lynne
6871fd3170
vulkan: always enable GL_EXT_control_flow_attributes
2024-10-06 07:13:04 +02:00