1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-08-10 06:10:52 +02:00
Commit Graph

120500 Commits

Author SHA1 Message Date
Timo Rothenpieler
e93de9948d avutils/pixfmt: add YUV444/GBRP 10 and 12 bit MSB formats 2025-07-11 17:49:58 +02:00
Jorge Estrada
cd91469114 avfilter/overlay_cuda: add timeline editing support
Enables timeline editing options for overlay_cuda similar to what overlay allows

Example overlaying an image on a video between 30 to 60 seconds:

ffmpeg -hwaccel cuda -hwaccel_output_format cuda -i sample-video.mp4 -i sample-image.jpg
-filter_complex "[1:v]hwupload_cuda[image],[0:v]scale_npp=format=yuv420p[video],[video][image]overlay_cuda=enable='between(t,30,60)'"
-c:v h264_nvenc -c:a copy -y overlay-output-gpu.mp4

Signed-off-by: Jorge Estrada <jestrada.list@gmail.com>
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2025-07-11 17:49:58 +02:00
Timo Rothenpieler
9b6638e125 avformat/tls_schannel: fix non-blocking write breaking TLS sessions 2025-07-11 17:49:58 +02:00
Timo Rothenpieler
9cd86c431b avformat/tls_schannel: add option to load server certificate from store 2025-07-11 17:49:57 +02:00
Timo Rothenpieler
90fa9636ef avformat/tls_schannel: add DTLS support 2025-07-11 17:49:57 +02:00
Timo Rothenpieler
6af099522e avformat/tls: make passing an external socket universal 2025-07-11 17:49:57 +02:00
Timo Rothenpieler
2604c86c1f avformat/udp: add function to set remote address directly 2025-07-11 17:49:57 +02:00
Timo Rothenpieler
585cae13fa avformat/udp: separate rx and tx fifo 2025-07-11 17:49:57 +02:00
Timo Rothenpieler
af04a27893 avformat/udp: make recv addr of each packet available 2025-07-11 17:49:57 +02:00
Timo Rothenpieler
2c7e117fe0 avformat/tls: move whip specific init out of generic tls code 2025-07-11 17:49:57 +02:00
Marvin Scholz
7c91ae9419 avformat/rtsp: check copy_tls_opts_dict
Properly check av_dict_set return values and propagate them to
the caller so they can be handled.
2025-07-11 16:32:05 +02:00
Marvin Scholz
c4e8ac3d0e avformat/rtsp: use av_unreachable 2025-07-11 16:32:05 +02:00
Marvin Scholz
c425951c05 avformat/rtsp: fix misleading indentation 2025-07-11 16:32:05 +02:00
Andreas Rheinhardt
fadadb56e6 avcodec/mpegvideo_dec: Avoid implicit NULL + offset
Happens since 4fc874ef08
when this code is called via error resilience.
Also do the same for wmv2dec.c.
Fixes the vsynth_{1,2,3,_lena}-mpeg4-error and wmv2-drm-dec FATE-tests.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2025-07-11 15:14:36 +02:00
Andreas Rheinhardt
9139edfdd3 avcodec/opus/dec: Simplify resetting AVAudioFifo
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2025-07-11 15:14:27 +02:00
Andreas Rheinhardt
66f29ae9b6 avcodec/opus/dec: Don't call function multiple times in FFMAX
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2025-07-11 15:14:21 +02:00
Andreas Rheinhardt
faf0d81309 avcodec/opus/dec: Remove unused parameters
The parameters here are not only unused, but buf_size's value
is actually wrong when flushing (it comes from the subpacket
of the last packet sent and is therefore outdated).

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2025-07-11 15:14:14 +02:00
Andreas Rheinhardt
ba2c9acedb avcodec/get_bits: Remove GetBitContext.buffer_end
It is unused. Furthermore, this automatically fixes the issue
that init_get_bits() failure would lead to NULL + 0 (when
setting buffer_end) which is UB before C23. This happened
in the fic-avi and fic-avi-skip_cursor FATE-tests.

This saved 7296B of .text here.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2025-07-11 15:13:21 +02:00
Andreas Rheinhardt
367cf961ea avcodec/get_bits: Add get_bits_bytesize()
And use it to avoid accesses to GetBitContext.buffer_end.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2025-07-11 15:13:21 +02:00
Andreas Rheinhardt
d20a4ef93c avcodec/vvc/dec: Don't use GetBit-API when byte-aligned
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2025-07-11 15:13:21 +02:00
Andreas Rheinhardt
d19b88f570 avcodec/bytestream: Add const where appropriate
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2025-07-11 15:13:21 +02:00
Kacper Michajłow
3334bdc6e7 avformat/scd: ensure SCD_MIN_HEADER_SIZE bytes are read
Instead of accessing unintialized data when input is shorter than
expected size.

Fixes use of uninitialized value in MSAN build.
Found by OSS-Fuzz.

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-07-11 01:23:58 +02:00
James Almer
1787fade20 fftools/ffmpeg_demux: don't flag timestamps as unreliable if they are generated
Regardless of the source being an AVFMT_NOTIMESTAMPS format, if the timestamps
are generated like when using the use_wallclock_as_timestamps demuxer option,
then they are reliable.

Fixes ticket #11268

Signed-off-by: James Almer <jamrial@gmail.com>
2025-07-10 11:13:36 -03:00
Marvin Scholz
82aeee3c19 avformat/rtsp: fix leak of options dict on error
Fix CID 1655306

Reviewed-by: Kieran Kunhya <kierank@obe.tv>
2025-07-10 13:16:08 +02:00
Peter Ross
853ad9e77e avcodec/adpcm: squelch uninitialized variable warnings
Fixes CID1655273 and CID1655274.

Signed-off-by: Marvin Scholz <epirat07@gmail.com>
2025-07-10 13:01:15 +02:00
Desmond Liu
060fc4e3a5 doc/scaler.texi: add missing gamma option
Add missing 'gamma correct scaling' option to documentation.

Signed-off-by: Desmond Liu <desmond.liu@netint.ca>
2025-07-08 16:05:22 +05:30
Marvin Scholz
0dedef1557 avformat/tls: rename accidentally changed options
These were accidentally renamed back to the old names in
ba9817df9d

Reviewed-by: Timo Rothenpieler <timo@rothenpieler.org>
2025-07-08 00:16:21 +02:00
Marvin Scholz
50cae8ad76 Changelog: mention dropping OpenSSL < 1.1.0 2025-07-07 20:53:54 +02:00
Dawid Kozinski
219f234e07 avformat/mov: add support for APV streams
Signed-off-by: Dawid Kozinski <d.kozinski@samsung.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2025-07-07 13:37:24 -03:00
Marvin Scholz
934e1c23b0 APIchanges: Add entry for AV_PKT_DATA_RTCP_SR 2025-07-07 17:19:44 +02:00
Marvin Scholz
eca477da52 avcodec: bump minor after adding AV_PKT_DATA_RTCP_SR 2025-07-07 17:18:48 +02:00
Marvin Scholz
d2828ab284 avformat: rtsp: export AV_PKT_DATA_RTCP_SR 2025-07-07 16:33:48 +02:00
Marvin Scholz
73d77693c5 avcodec: add AV_PKT_DATA_RTCP_SR side data type 2025-07-07 16:33:48 +02:00
Marvin Scholz
74aa710879 lavf: add and use AVRTCPSenderReport struct
This will be used in a future commit to expose the SR as side-data.
2025-07-07 16:14:02 +02:00
Marvin Scholz
e0abe0a02a lavf/rtpdec: fix RTCP SR packet length check
The minimum valid packet length is 28, given that the length includes
the packet header.

This didn't cause any issues so far as the code did not care about the
last two fields in the SR section, but will be relevant in a future
commit.
2025-07-07 16:14:02 +02:00
Marvin Scholz
019ca5f013 avformat/tls_openssl: use SSL_CTX_set_min_proto_version
Using SSL_CTX_set_options to disallow specific versions is
discouraged by the documentation, which recommends to use
SSL_CTX_set_min_proto_version instead.
2025-07-07 01:52:47 +02:00
Marvin Scholz
fb38d8759b avformat/tls_openssl: use TLS_[client|server]_method
SSLv23_*_method was just a define for these anyway since OpenSSL 1.1.0
and the old functions are deprecated.
2025-07-07 01:52:47 +02:00
Marvin Scholz
aaffa9bc72 avformat/tls_openssl: remove unnecessary checks
Calling av_free with NULL is a no-op so this check is not needed.
2025-07-07 01:52:46 +02:00
Marvin Scholz
3abc8d507b avformat/tls_openssl: remove leftover comment 2025-07-07 01:52:46 +02:00
Marvin Scholz
816dad231f avformat/tls_openssl: properly get new BIO index
As noted in the OpenSSL documentation, BIO_get_new_index must be
used to get a new BIO index. This is ORd with the proper type flag
BIO_TYPE_SOURCE_SINK.
2025-07-07 01:52:46 +02:00
Marvin Scholz
1702becd64 avformat/tls_openssl: remove now unnecessary define
This was used previously when multiple OpenSSL versions were supported
that required this to be handled differently.
2025-07-07 01:52:46 +02:00
Marvin Scholz
f0913b3f16 avformat: tls: drop support for OpenSSL < 1.1.0 2025-07-07 01:52:46 +02:00
Marvin Scholz
f256487cd8 configure: require at least OpenSSL 1.1.0
Given that OPENSSL_init_ssl was introduced in 1.1.0 means we can rely on
that to ensure we have at least 1.1.0.
2025-07-07 01:52:46 +02:00
Daniel N Pettersson
e1ef33d361 avformat/rtsp: add TLS options
Add TLS options to RTSP for when TLS is used for the lower protocol.

Signed-off-by: Marvin Scholz <epirat07@gmail.com>
Co-authored-by: Marvin Scholz <epirat07@gmail.com>
2025-07-07 01:45:10 +02:00
Marvin Scholz
ba9817df9d avformat/tls: move common client options into their own define
Used in a future commit to not duplicate options.
2025-07-07 01:45:07 +02:00
Marvin Scholz
d9eb63724e avutil/hwcontext_videotoolbox: fix unused variable warning
Resolves an unused variable warning when targeting a recent appleOS
version.
2025-07-07 01:33:18 +02:00
Michael Niedermayer
eb52251c0a avcodec/vvc/ctu: Check ff_vvc_num_signalled_palette_entries
Fixes: index 107 out of bounds for type 'uint16_t const[63]'
Fixes: 421336912/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VVC_fuzzer-6436225806565376

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-07-06 19:25:47 +02:00
Michael Niedermayer
9d1e4feece avcodec/vvc/ctu: Check palette_escape_val
Fixes: integer overflow
Fixes: 418314174/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VVC_fuzzer-4871731867353088

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-07-06 19:24:52 +02:00
Michael Niedermayer
38ead08815 swscale/output: Fix integer overflows in yuv2rgba64_1_c_template()
Fixes: signed integer overflow: -132524 * 16525 cannot be represented in type 'int'
Fixes: 414862270/clusterfuzz-testcase-minimized-ffmpeg_SWS_fuzzer-4869083202125824

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-07-06 19:24:07 +02:00
Michael Niedermayer
67559760c6 avcodec/psd: Move frame allocation after RLE processing
Fixes: Timeout
Fixes: 410609448/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PSD_fuzzer-6267226128973824

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-07-06 19:23:56 +02:00