Commit Graph

117514 Commits

Author SHA1 Message Date
Anton Khirnov
9e2a231236 fftools/ffmpeg_filter: treat apad filter as a source
Ideally lavfi should have a dedicated API for detecting this.

Fixes #11168 and #11061
2024-10-15 10:38:48 +02:00
Anton Khirnov
79c47dfd25 lavc/hevcdec: unbreak WPP/progress2 code
The "progress2" API in pthread_slice.c currently associates a progress
value with a thread rather than a job, relying on the broken assumption
that a job's thread number is equal to its job number modulo thread
count.

This removes this API entirely, and changes hevcdec to use a
ThreadProgress-based implementation that associates a
mutex/cond/progress value with every job.

Fixes races and deadlocks in hevdec with slice threading, e.g. some of
those mentioned in #11221.
2024-10-15 10:37:44 +02:00
Martin Schitter
c50f79a0dc doc/APIchanges: add missing entry for adding RGBF16
The missing APIchanges entry requested by A.Khirnov.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2024-10-15 10:36:54 +02:00
Martin Storsjö
38d08f5c45 configure: Only try to use the -no_warn_duplicate_libraries flag on Darwin
While we only add the flag if the linker seems to support it,
it turns out that ld.bfd had a bug where the flag is accidentally
accepted, and the flag produces an output file named
"_warn_duplicate_libraries".

The ld.bfd bug was fixed in binutils 2.36, in
https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=3991c7acb29aa8d7d52150695eb3efa03a08dd50.

Signed-off-by: Martin Storsjö <martin@martin.st>
2024-10-15 09:53:14 +03:00
Michael Niedermayer
c1edec3a24
avcodec/ffv1enc: Fix RCT with RGB64
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2024-10-14 22:32:48 +02:00
Michael Niedermayer
10e5af15bf
avcodec/ffv1dec: Fix end computation with ec=2
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2024-10-14 22:31:26 +02:00
Michael Niedermayer
8e52b15258
avcodec/ffv1enc: Move slice termination into threads
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2024-10-14 22:29:33 +02:00
Michael Niedermayer
d9269fcacf
avcodec/ffv1enc: allow manually specifying the crc type
Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2024-10-14 22:27:30 +02:00
Martin Schitter
d73b73af5e
swscale/input: add input support for RGBF16
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2024-10-14 20:46:24 +02:00
Martin Schitter
c993a91bea
avutil: add RGBF16 pix_fmt
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2024-10-14 20:46:24 +02:00
Martin Schitter
c72a5c486a
swscale/input: add input support for RGBF32
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2024-10-14 20:46:23 +02:00
James Almer
fd8b0dcfed avutil/hwcontext_vulkan: add proper maps for XV3{0,6}
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-14 15:12:49 -03:00
Ramiro Polla
bce5855afb tests/fate: disable compression for zlib-based codecs
FATE results differ when using the original zlib and zlib-ng.

Since we don't need to test the result from zlib itself, this commit
disables compression on tests for zlib-based codecs, which ends up
giving the same results with both libraries.

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-14 13:59:31 -03:00
Ramiro Polla
3661d1982d avcodec/flashsvenc: add compression_level option
This allows setting the compression level used by zlib.

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-14 13:59:26 -03: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
4f0514df62 fate/filter-video: add tests for packed YUV in yuvtestsrc
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-14 10:37:21 -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
James Almer
e347b4ff31 avformat/riff: map Y410 fourcc to RAWVIDEO decoder
md5 values change because the nut container now reports rawvideo as encoder
and Y410 as codec type instead of the bogus RGB[15].

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-13 20:44:09 -03:00
Alexander Strasser
b0ea76c9d1 lavc/dnxuc_parser: Use av_fourcc2str instead of av_fourcc_make_string
The documentation of av_fourcc_make_string states the passed in
buffer must be of at least the size of AV_FOURCC_MAX_STRING_SIZE .

Using av_fourcc2str uses the correct buffer size and moves the
buffer into a nested scope while also being shorter.

Fixes: CID 1632380
Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
2024-10-13 22:57:51 +02:00
Marth64
f46415f373 avformat/hlsenc: check return value of avcodec_parameters_copy()
Written in the dominant style of the surrounding code block.

Signed-off-by: Marth64 <marth64@proxyid.net>
Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
2024-10-13 23:04:20 +08:00
Marth64
95bb47de7d avformat/dashdec: format open_demux_for_component()
Signed-off-by: Marth64 <marth64@proxyid.net>
Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
2024-10-13 23:03:21 +08:00
Marth64
7acc2ebd5d avformat/dashdec: check return code of avcodec_parameters_copy()
Signed-off-by: Marth64 <marth64@proxyid.net>
Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
2024-10-13 23:03:19 +08:00
Marth64
6ee7555a90 avformat/dashdec: return ret directly in open_demux_for_component()
Signed-off-by: Marth64 <marth64@proxyid.net>
Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
2024-10-13 23:03:15 +08:00
Jonathan Baecker
e6e9cb3ce7 libavformat/hlsplaylist: add subtitle_varname for naming subtitle streams
If 'sname:*' is set in the var_stream_map variable, use it as
the NAME attribute for subtitles. This improves the naming of
subtitle streams in HTML players, providing clearer and more
descriptive labels for users.

Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
2024-10-13 23:01:59 +08:00
Jonathan Baecker
c7cf0df494 avformat/hlsenc: Respect omit_endlist flag in subtitle playlists
Ensure that when the `-hls_flags omit_endlist` option is set,
the `#EXT-X-ENDLIST` tag is also omitted from the `stream_vtt.m3u8`
subtitle playlist. This maintains consistency with the behavior
in other playlists when `omit_endlist` is specified.

Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
2024-10-13 23:01:03 +08:00
Jonathan Baecker
425c323420 avformat/hlsenc: Respect append_list flag in subtitle
Ensure that when the `-hls_flags append_list` option is set,
that *.vtt files in stream_vtt.m3u8 are correctly updated.
This fixes https://trac.ffmpeg.org/ticket/11208

Reviewed-by: Steven Liu <lq@chinaffmpeg.org>
2024-10-13 22:59:22 +08: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
asivery
31a63e4e01 avformat/oma: Demux oma-encapsulated AAC audio
Signed-off-by: asivery <asivery@protonmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2024-10-13 13:43:39 +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
vipyne
f5403e5f1e configure: suggest installing nasm before using --disable-x86asm
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2024-10-13 13:28:49 +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
James Almer
02306cbfee avcodec: deprecate v410 de/encoder
The V30X pixel format was recently added, so this lavc workaround is no longer
needed.

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 11:21:14 -03:00
James Almer
3c64d614c7 avcodec: deprecate v308 de/encoder
The vyu444 pixel format was recently added, so this lavc workaround is no longer
needed.

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 11:21:14 -03:00
James Almer
e2427a4223 avcodec: deprecate v408 de/encoder
The uyva pixel format was recently added, so this lavc workaround is no longer
needed.

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 11:21:14 -03:00
James Almer
c5cf98d77e avformat/movenc: add support for V30X pixel format
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 11:21:14 -03:00
James Almer
12fc358249 avformat/movenc: add support for VYU444 pixel format
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 11:21:14 -03:00
James Almer
d6b08e0c0f avformat/movenc: add support for UYVA pixel format
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 11:21:14 -03:00
James Almer
de923595fd avcodec/videotoolbox: choose AYUV pixel format when ideal
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 11:21:14 -03:00
James Almer
d41e5b0fc7 avutil/hwcontext_videotoolbox: add support for AYUV pixel format
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 11:21:14 -03:00
James Almer
8b208362ae avformat/riff: map v410 fourcc to RAWVIDEO decoder
There's no need to keep using a custom decoder for this pixel format.
md5 values change because the nut container now reports rawvideo as encoder.

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 11:21:10 -03:00
James Almer
f6878a9b09 avformat/riff: map v308 fourcc to RAWVIDEO decoder
There's no need to keep using a custom decoder for this pixel format.
md5 values change because the nut container now reports rawvideo as encoder.

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 11:21:06 -03:00
James Almer
b9653e3d3c avformat/riff: map v408 fourcc to RAWVIDEO decoder
There's no need to keep using a custom decoder for this pixel format.
md5 values change because the nut container now reports rawvideo as encoder.

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 11:20:58 -03:00
James Almer
1f9a44a7fc avformat/riff: map y408 fourcc to RAWVIDEO decoder
md5 values change because the nut container now reports rawvideo as encoder.

Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 11:20:22 -03:00
James Almer
cd04ebe033 swscale/output: add V30X output support
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 10:08:29 -03:00
James Almer
57db8e0571 swscale/output: add VYU444 output support
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 10:08:29 -03:00
James Almer
eac9af382a swscale/output: add UYVA output support
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 10:08:29 -03:00
James Almer
6cd52c1080 swscale/output: add AYUV output support
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 10:06:09 -03:00
James Almer
5f1bf3cd65 swscale/output: add missing yuv2packed1 and yuv2packed2 support for VUY{X,A}
Signed-off-by: James Almer <jamrial@gmail.com>
2024-10-12 09:56:23 -03:00
Rémi Denis-Courmont
1eb026dd8b riscv/vvc: fix UNDEF whilst initialising DSP
The current triggers an illegal instruction if the CPU does not support
vectors.
2024-10-12 09:23:33 +03:00