Niklas Haas
3bf12beae9
swscale: slightly reorder header
...
I want to start grouping "legacy" functions which I tend to deprecate
together, away from the new ones.
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
2024-10-23 23:01:09 +02:00
Niklas Haas
fbfea1c644
swscale: publicly typedef struct SwsContext
...
Slightly more convenient, especially for the upcoming refactor which will
turn SwsContext into a public struct.
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
2024-10-23 23:00:54 +02:00
James Almer
b520d95467
swscale/output: add Y216LE output support
...
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-23 14:11:35 -03:00
James Almer
7756cd98ac
swscale/input: add Y216LE input support
...
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-23 14:11:23 -03:00
James Almer
f462ba05f5
avutil/pixfmt: add Y216 pixel format
...
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-23 14:11:16 -03:00
Lynne
9eb7e8d2a4
vulkan: move alignment of host-visible allocations outside of ff_vk_alloc_mem
...
The issue is that if dedicated allocation is used, VkBufferCreateInfo.size
and the actual allocated size mismatched, which is a validation error.
2024-10-23 08:14:10 +02:00
Emily
3565903c63
fate/ffmpeg: add samples dependency to fate-ffmpeg-spec-disposition
...
This test utilizes an MPEG-TS sample from FATE suite, yet was
marked as not requiring samples.
Reviewed-by: Jan Ekström <jeebjp@gmail.com>
2024-10-21 21:19:33 +03:00
James Almer
8d940a07d1
avutil/pixdesc: fix alpha offset for X2{RGB,BGR}10BE
...
fixes fate-pixelutils
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-21 10:24:03 -03:00
James Almer
60b8f0d004
fate/filter-video: make fate-filter-pixdesc compare the hashed output with and without pixdesctest filtering
...
This helps detecting inconsistencies in swscale input/output code and
a av_read_image_line()/av_write_image_line() pass.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-21 09:52:58 -03:00
James Almer
0bb53948ac
swscale/swscale_unscaled: clear the low bits in planar8ToP01xleWrapper
...
This makes the unscaled output of p010le and p016le match the generic path.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-21 09:52:58 -03:00
James Almer
dfd7acf3ed
avfilter/vf_pixdesctest: also take into account undefined alpha components
...
Ensure those bits are copied, which will result in the output being the same as
the input, where swscale set them to the equivalent of fully opaque.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-21 09:52:58 -03:00
James Almer
8debc5aa41
avfilter/vsrc_testsrc: use the alpha component information for XV3{0,6} and V30X
...
And add a few more tests to ensure all the pixfmts affected by this change
are tested.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-21 09:52:58 -03:00
James Almer
8f1de9ccd9
avutil/pixdesc: add alpha component information to pixfmts with reserved but undefined alpha bits
...
This can be useful to simplify certain processes that need to know how many
reserved bits there are and where they are placed, even if they are ultimately
unused, as will be shown in the next commit.
For any other case where the user simply looks at nb_components components, it
will make no difference.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-21 09:52:50 -03:00
James Almer
72f8f76d45
avutil/pixdesc: ensure the component being read or writen to is valid
...
If depth is 0, then the component is invalid/unset.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-21 09:43:45 -03:00
Tomas Härdin
baa23e40c1
lavf/mxfdec: Set a scan direction explicitly
...
This prevents a theoretical case where seeks to a gap in an index can cause an infinite loop
2024-10-21 11:14:24 +02:00
Nuo Mi
b611410569
avcodec/vvc/thread: Check frame to be non NULL
...
Fixes: NULL pointer dereference
Fixes: 71303/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VVC_fuzzer-4875859050168320
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reported-by: Michael Niedermayer <michael@niedermayer.cc>
2024-10-20 20:36:15 +08:00
arch1t3cht
72e5381123
avfilter/vf_subtitles: Respect YCbCr Matrix header
...
As specified in libass's ass_types.h, the colors or ASS_Images
should be converted to YCbCr using the matrix/range specified in
the track's YCbCrMatrix field (unless that field is set to YCBCR_NONE,
and defaulting to TV.601 if the header is missing).
This does not affect any subtitles generated or transcoded by ffmpeg,
since these contain a 'YCbCrMatrix: None' header.
Signed-off-by: arch1t3cht <arch1t3cht@gmail.com>
Signed-off-by: rcombs <rcombs@rcombs.me>
2024-10-19 11:08:34 -05:00
Marvin Scholz
c98810ab47
avcodec/hw_base_encode: fix use after free on close
...
The way the linked list of images was freed caused a
use after free, by accessing pic->next after pic was
already freed.
Regression from 48a1a12968345bf673db1e1cbb5c64bd3529c50c
Fix CID1633236
2024-10-18 11:18:41 +02:00
Lynne
dfaade76db
vulkan: move buffer allocation av_log message
...
Its more useful when buffers are allocated, not in the
pool.
2024-10-18 11:18:35 +02:00
James Almer
1edc748eff
avformat/movenc: explicitly support V30XLE and not the host native endian version
...
Should fix fate-vsynth*-v410 on BE targets.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-17 21:20:27 -03:00
James Almer
6cf4186d1b
fate/vcodec: update reference files for v410 vsynth tests
...
Forgotten in 601a3479466f4f03d27487dfc6fcb9430efb8fc6.
Found-by: ramiro
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-17 17:04:57 -03:00
James Almer
f0e6296dde
swscale/output: fix alpha endianness in XV36
...
Mistakenly written in native endianness in 42098f92662c47659df85173d8076b62a23269aa.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-17 12:18:35 -03:00
James Almer
062fcacc8f
avfilter/vsrc_testsrc: fill the xv30le alpha bits
...
As with other pixel formats, set the undefined alpha bits to opaque.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-17 11:59:30 -03:00
James Almer
601a347946
swscale/output: fill the xv30le alpha bits
...
As with other pixel formats, set the undefined alpha bits to opaque.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-17 11:59:24 -03:00
James Almer
5601c5bb2e
avfilter/vsrc_testsrc: add support for XV36 and AYUV64
...
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-17 11:57:36 -03:00
James Almer
08c632ec0f
swscale/output: add AYUV64BE output support
...
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-17 11:57:36 -03:00
James Almer
5a699c8db9
swscale/input: add AYUV64BE input support
...
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-17 11:57:36 -03:00
James Almer
42098f9266
swscale/output: add X36VBE output support
...
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-17 11:57:36 -03:00
James Almer
e012a7a24a
swscale/input: add X36VBE input support
...
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-17 11:57:36 -03:00
James Almer
2137346324
swscale/output: fill all the xv36le alpha bits
...
The format is 10 bit per component, not 8.
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-17 11:57:36 -03:00
James Almer
e1d1ba4cbc
tests/checkasm/sw_rgb: don't write random data past the end of the buffer
...
Should fix fate-checkasm-sw_rgb under gcc-ubsan.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Ramiro Polla <ramiro.polla@gmail.com>
2024-10-17 13:08:39 +02:00
Ramiro Polla
d2ed52dc02
avdevice/dshow: fix unused variable warning
...
The acaps variable was used outside of the #if DSHOWDEBUG block with
a1c4929f, but it is no longer used outside of the block since f125c504.
2024-10-17 13:04:17 +02:00
Anton Khirnov
c034213083
lavfi/vsrc_perlin: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
e0aa644978
lavfi/vsrc_life: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
2094a7256c
lavfi/vsrc_life: avoid modifying the context in query_formats()
...
It is supposed to be free of side effects. Do it in init instead.
2024-10-17 11:00:35 +02:00
Anton Khirnov
d08feb9003
lavfi/vf_zscale: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
6bff95be03
lavfi/vf_weave: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
ab01f0522b
lavfi/vf_vpp_qsv: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
e5b530f137
lavfi/vf_vmafmotion: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
73c863fad8
lavfi/vf_v360: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
223327d51a
lavfi/vf_untile: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
5d0fbd7145
lavfi/vf_transpose: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
ef4913e30d
lavfi/vf_tpad: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
ce5aa74045
lavfi/vf_tile: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
14ece0bf58
lavfi/vf_telecine: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
a18418f39d
lavfi/vf_swapuv: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
06292d34de
lavfi/vf_swaprect: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
05aad90c69
lavfi/vf_subtitles: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
6ed357ce77
lavfi/vf_stereo3d: convert to query_func2()
2024-10-17 11:00:35 +02:00
Anton Khirnov
bdaaddb65c
lavfi/vf_stack: convert to query_func2()
2024-10-17 11:00:35 +02:00