aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* avformat/tls_openssl: remove all redundant "TLS: " in log with AVClassJack Lau2025-07-171-5/+5
| | | | | Signed-off-by: Jack Lau <jacklau1222@qq.com> Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avformat/tls_openssl: replace 1 with TLS_ST_OK to be more clearJack Lau2025-07-171-1/+2
| | | | | Signed-off-by: Jack Lau <jacklau1222@qq.com> Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avformat/whip: free udp socket after dtls freeJack Lau2025-07-171-1/+1
| | | | | | | | the SSL_shutdown in tls_close need call the url_bio_bwrite so we should keep udp still alive Signed-off-by: Jack Lau <jacklau1222@qq.com> Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avformat/tls_openssl: unset nonblock flag on correct URLContext during dtls ↵Timo Rothenpieler2025-07-171-4/+1
| | | | | | | handshake The internal BIO functions do not in fact look at this flag, only the outer tls_read and tls_write functions do.
* avformat/tls_openssl: set tlsext host name after init sslJack Lau2025-07-171-3/+3
| | | | | Signed-off-by: Jack Lau <jacklau1222@qq.com> Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* configure: add -Wl when linker is called indirectlyKacper Michajłow2025-07-171-1/+5
| | | | | | | It's possible to call linker indirectly through driver like Clang. In which cases linker args has to be prefixed with -Wl. Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
* checkasm/swscale: fix function prototypesKacper Michajłow2025-07-174-11/+11
| | | | | | | | | | | This aligns declared function types in checkasm with real definition. Fixes FATE: checkasm-{sw_rgb,sw_scale,sw_yuv2rgb,sw_yuv2yuv} Fixes: runtime error: call to function <func> through pointer to incorrect function type Fixes: c1a0e657638f7007dcc807a2d985c22631fcd6d3 Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
* avformat/flvdec: don't skip backwards or over EOFTimo Rothenpieler2025-07-161-2/+10
| | | | | | | | | | | Skipping backwards (and even forwards) resets the EOF flag, and can thus lead to infinite looping if the conditions are just right. Fixes: Infinite loop Fixes: 427538726/clusterfuzz-testcase-minimized-ffmpeg_dem_FLV_fuzzer-6582567304495104 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
* avformat/tls_openssl: automatically generate self-signed certificate when ↵Timo Rothenpieler2025-07-161-5/+30
| | | | none is provided in listen mode
* avformat/tls_openssl: make generating fingerprints optionalTimo Rothenpieler2025-07-161-8/+12
|
* avformat/tls_openssl: don't expose deprecated EC_KEY outside of its functionTimo Rothenpieler2025-07-161-11/+9
|
* avformat/tls_openssl: properly free generated/read keys and certificatesTimo Rothenpieler2025-07-161-2/+24
|
* avformat/tls_openssl: don't enable read_ahead in dtls modeTimo Rothenpieler2025-07-161-3/+0
| | | | | OpenSSL docs say: These functions have no impact when used with DTLS.
* avformar/tls_openssl: use correct info callback in DTLS modeTimo Rothenpieler2025-07-161-1/+1
|
* avformat/tls_openssl: clean up peer verify logic in dtls modeTimo Rothenpieler2025-07-161-14/+8
|
* avformat/tls_openssl: don't hardcode ciphers and curves for dtlsTimo Rothenpieler2025-07-161-22/+0
|
* avformat/tls_openssl: properly limit written size to data mtuTimo Rothenpieler2025-07-161-0/+5
|
* avformat/tls_openssl: set default MTU if none is setTimo Rothenpieler2025-07-161-2/+6
|
* avformat/tls_openssl: initialize DTLS context with correct methodTimo Rothenpieler2025-07-161-1/+2
|
* avformat/tls_openssl: don't abort if dtls has no key/cert setTimo Rothenpieler2025-07-161-8/+0
|
* avformat/tls_openssl: force dtls handshake to be blockingTimo Rothenpieler2025-07-161-6/+12
| | | | | There is no sensible way to handle this otherwise anyway, one just has to loop over this function until it succeeds.
* avformat/tls_openssl: set dtls remote addr in listen modeTimo Rothenpieler2025-07-161-1/+17
| | | | | Taken from the first received packet, which will signify the now permanent peer of this DTLS "connection".
* avcodec/ffv1dec: don't add offsets to NULL pointersJames Almer2025-07-151-4/+6
| | | | | Fixes: libavcodec/ffv1dec.c:452:43: runtime error: applying zero offset to null pointer Signed-off-by: James Almer <jamrial@gmail.com>
* avformat/tls_schannel: add check for Windows 10 only types and definesJames Almer2025-07-152-2/+35
| | | | | | | Old Mingw-w64 releases provided by some distros seemingly don't have them, so check for them and disable the dtls protocol if unavailable. Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/hwcontext_vulkan: don't over-map buffers with prior paddingNiklas Haas2025-07-151-1/+2
| | | | | | | | | | | | | If the image data is not at the start of the buffer allocation, such as when the buffer has padding before the image data, this function maps too much memory, since src_data + src_buf->size exceeds the buffer size. Fix this by subtracting the difference between the buffer start and the provided image data pointer from the size of the memory range to map. An easy way to reproduce this issue is using the vf_pad filter, which allocates image data buffers with a nonzero offset whenever padding is requested before the start of the image data.
* aacenc_tns: clamp filter direction energy measurementLynne2025-07-151-9/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The issue is that: float en[2]; ... tns->n_filt[w] = is8 ? 1 : order != TNS_MAX_ORDER ? 2 : 3; for (g = 0; g < tns->n_filt[w]; g++) { tns->direction[w][g] = slant != 2 ? slant : en[g] < en[!g]; When using the AAC Main profile, n_filt = 3, and slant is by default 2 (normal long frames), g can go above 1. en is the evolution of energy in the frequency domain for every band at the given window. E.g. whether the energy is concentrated at the top of each band, or the bottom. For 2-pole filters, its straightforward. For 3-pole filters, we need more than 2 measurements. This commit properly implements support for 3-pole filters, by measuring the band energy across three areas. Do note that even xHE-AAC caps n_filt to 2, and only AAC Main allows n_filt == 3. Fixes https://trac.ffmpeg.org/ticket/11418
* MAINTAINERS: add myselfKacper Michajłow2025-07-151-0/+1
| | | | | Signed-off-by: Kacper Michajłow <kasper93@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* tests/fate: add fate test for excessive frame buffering when using filtersMarton Balint2025-07-143-0/+35
| | | | | | Based on the command line of ticket #10959. Signed-off-by: Marton Balint <cus@passwd.hu>
* fftools/ffmpeg: add support for setting maximum buffered frames in a filtergraphMarton Balint2025-07-144-0/+20
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avfilter/avfilter: add AVFilterGraph->max_buffered_frames to limit buffered ↵Marton Balint2025-07-144-2/+17
| | | | | | frames Signed-off-by: Marton Balint <cus@passwd.hu>
* avfilter/framequeue: add support for limiting and tracking buffered frames ↵Marton Balint2025-07-142-3/+22
| | | | | | in the queues Signed-off-by: Marton Balint <cus@passwd.hu>
* libavcodec/alsdec.c: Add check for av_malloc_array() and av_calloc()Jiasheng Jiang2025-07-121-2/+6
| | | | | | | | | Add check for the return value of av_malloc_array() and av_calloc() to avoid potential NULL pointer dereference. Fixes: dcfd24b10c ("avcodec/alsdec: Implement floating point sample data decoding") Signed-off-by: Jiasheng Jiang <jiashengjiangcool@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/vf_thumbnail: switch to query_func2Niklas Haas2025-07-121-10/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of enumerating a static list of planar formats to support, walk through the format list and enable all supported formats. As of writing, this generates the following format list: - gbrap - gbrap10le - gbrap12le - gbrap14le - gbrap16le - gbrp - gbrp10le - gbrp12le - gbrp14le - gbrp16le - gbrp9le - gray - gray10le - gray12le - gray14le - gray16le - gray9le - ya16le - ya8 - yuv410p - yuv411p - yuv420p - yuv420p10le - yuv420p12le - yuv420p14le - yuv420p16le - yuv420p9le - yuv422p - yuv422p10le - yuv422p12le - yuv422p14le - yuv422p16le - yuv422p9le - yuv440p - yuv440p10le - yuv440p12le - yuv444p - yuv444p10le - yuv444p12le - yuv444p14le - yuv444p16le - yuv444p9le - yuva420p - yuva420p10le - yuva420p16le - yuva420p9le - yuva422p - yuva422p10le - yuva422p12le - yuva422p16le - yuva422p9le - yuva444p - yuva444p10le - yuva444p12le - yuva444p16le - yuva444p9le - yuvj411p - yuvj420p - yuvj422p - yuvj440p - yuvj444p
* avfilter/vf_thumbnail: support more planar formatsNiklas Haas2025-07-121-5/+20
| | | | | | | | | | | This adds support for high bit depth formats, as well as formats with fewer than 3 planes. The implementation for HBD is the same as for 8 bit formats, just right shifted to 8 bits. It's worth pointing out that this also works for HDR formats (and even DV), because the underlying implementation is just trying to minimize the histogram difference. If anything, using a HDR format will result in a *more* accurate detection, because HDR formats tend to be more perceptually uniform.
* avcodec/nvdec: switch to proper pixfmts on next major bumpTimo Rothenpieler2025-07-114-0/+28
|
* avcodec/nvenc: add support for new 10 bit MSB pixel formatsTimo Rothenpieler2025-07-111-12/+21
|
* swscale: add support for new 10/12 bit MSB formatsTimo Rothenpieler2025-07-1131-57/+436
|
* avutils/pixfmt: add YUV444/GBRP 10 and 12 bit MSB formatsTimo Rothenpieler2025-07-114-0/+175
|
* avfilter/overlay_cuda: add timeline editing supportJorge Estrada2025-07-112-1/+2
| | | | | | | | | | | | | 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>
* avformat/tls_schannel: fix non-blocking write breaking TLS sessionsTimo Rothenpieler2025-07-111-32/+79
|
* avformat/tls_schannel: add option to load server certificate from storeTimo Rothenpieler2025-07-111-7/+40
|
* avformat/tls_schannel: add DTLS supportTimo Rothenpieler2025-07-113-65/+833
|
* avformat/tls: make passing an external socket universalTimo Rothenpieler2025-07-113-11/+16
|
* avformat/udp: add function to set remote address directlyTimo Rothenpieler2025-07-112-0/+31
|
* avformat/udp: separate rx and tx fifoTimo Rothenpieler2025-07-111-20/+27
|
* avformat/udp: make recv addr of each packet availableTimo Rothenpieler2025-07-112-18/+36
|
* avformat/tls: move whip specific init out of generic tls codeTimo Rothenpieler2025-07-113-13/+13
|
* avformat/rtsp: check copy_tls_opts_dictMarvin Scholz2025-07-111-10/+33
| | | | | Properly check av_dict_set return values and propagate them to the caller so they can be handled.
* avformat/rtsp: use av_unreachableMarvin Scholz2025-07-111-1/+1
|
* avformat/rtsp: fix misleading indentationMarvin Scholz2025-07-111-2/+2
|