summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* fftools/ffplay: set the alphamodes buffersink array option instead of the ↵James Almer2025-09-081-1/+2
| | | | | | | | | binary one And add the missing goto fail. This should ensure the alpha mode is set and remove bogus warnings printed by ffplay. Signed-off-by: James Almer <[email protected]>
* avfilter/buffersink: add missing checks for alphamodesJames Almer2025-09-081-2/+2
| | | | Signed-off-by: James Almer <[email protected]>
* lavc/cbs: Make error message more descriptiveFrank Plowman2025-09-081-1/+2
|
* Update libavformat/apvdec.cdariusz-f2025-09-081-1/+1
| | | | | Increase au_size limit by 4 times to fit more complex videos. Signed-off-by: dariusz-f <[email protected]>
* avformat/apv: fix range of au_sizeDariusz Frankiewicz2025-09-081-1/+1
| | | | | | Acces unit size is described in documentation as > 0 < 0xFFFFFFFF Signed-off-by: Dariusz Frankiewicz <[email protected]>
* doc/examples/vaapi_encode: fix invalid check on fwriteZhao Zhili2025-09-081-1/+1
| | | | | | | | | enc_pkt->size is 0 after av_packet_unref, which makes the check invalid. Fix regression from 3e4bfff2. Co-Authored-by: Jin Bo <[email protected]> Signed-off-by: Zhao Zhili <[email protected]>
* avcodec/aarch64/vvc: Implemented dmvr_h_10Krzysztof Pyrkosz2025-09-082-0/+65
| | | | | | | | | | | | | | | | | | A78: dmvr_h_10_12x20_neon: 82.2 ( 6.49x) dmvr_h_10_20x12_neon: 69.9 ( 3.66x) dmvr_h_10_20x20_neon: 112.5 ( 3.74x) dmvr_h_12_12x20_neon: 81.4 ( 6.51x) dmvr_h_12_20x12_neon: 69.2 ( 3.74x) dmvr_h_12_20x20_neon: 110.2 ( 3.85x) A72: dmvr_h_10_12x20_neon: 234.1 ( 4.67x) dmvr_h_10_20x12_neon: 221.4 ( 3.48x) dmvr_h_10_20x20_neon: 356.9 ( 3.59x) dmvr_h_12_12x20_neon: 234.1 ( 4.67x) dmvr_h_12_20x12_neon: 221.5 ( 3.53x) dmvr_h_12_20x20_neon: 357.0 ( 3.64x)
* avcodec/aarch64/vvc: Implement dmvr_h_8Krzysztof Pyrkosz2025-09-082-0/+54
| | | | | | | | | | | | A78: dmvr_h_8_12x20_neon: 76.6 ( 4.31x) dmvr_h_8_20x12_neon: 65.8 ( 3.49x) dmvr_h_8_20x20_neon: 106.6 ( 3.62x) A72: dmvr_h_8_12x20_neon: 190.6 ( 4.40x) dmvr_h_8_20x12_neon: 171.1 ( 4.31x) dmvr_h_8_20x20_neon: 275.1 ( 4.50x)
* avutil/hwcontext_d3d12va: added resource and heap flags to DeviceContextDmitrii Ovchinnikov2025-09-084-4/+50
|
* vc1_parser: Reset unesc_index after extracting header with complete framesDE-AI2025-09-081-0/+1
| | | | | | | | | | | When PARSER_FLAG_COMPLETE_FRAMES is set (e.g. in Matroska), unesc_index is not reset after the first frame, which causes subsequent frames to inherit leftover header data. This leads to incorrect keyframe marking and broken decoding. See also this bug report: https://trac.ffmpeg.org/ticket/8515 Signed-off-by: DE-AI <[email protected]>
* avfilter/vf_libplacebo: ensure linear tex is blittableNiklas Haas2025-09-081-1/+3
| | | | Required to clear textures to a background color.
* configure: fix CUDA compilation with SDK version 13 nvccTimo Rothenpieler2025-09-081-0/+3
| | | | | | Compute Capability 7.5 is now the lowest supported version. Fixes #20454
* avcodec/vaapi_encode: avoid potential overflowTong Wu2025-09-081-1/+1
| | | | | | | | The max_frame_size in byte will be filled in VAEncMiscParameterBufferMaxFrameSize which receives size in bit. This requires max_frame_size * 8. Signed-off-by: Tong Wu <[email protected]>
* swscale: Disable avx2 hscale 8to15 on IceLake and below due to Intel Gather ↵Alan Kelly2025-09-061-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Data Sampling mitigation performance loss Intel provided a microcode update to mitigate this security vulnerability which has a huge negative performance impact on gather instructions. This means that hscale 8to15 avx2, which uses gather extensively, is no longer faster than SSSE3 on impacted CPUs. https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/technical-documentation/gather-data-sampling.html Broadwell: hscale_8_to_15__fs_4_dstW_512_c: 3379.5 ( 1.00x) hscale_8_to_15__fs_4_dstW_512_sse2: 615.7 ( 5.49x) hscale_8_to_15__fs_4_dstW_512_ssse3: 613.4 ( 5.51x) hscale_8_to_15__fs_4_dstW_512_avx2: 495.7 ( 6.82x) Skylake: hscale_8_to_15__fs_4_dstW_512_c: 3411.4 ( 1.00x) hscale_8_to_15__fs_4_dstW_512_sse2: 591.0 ( 5.77x) hscale_8_to_15__fs_4_dstW_512_ssse3: 591.5 ( 5.77x) hscale_8_to_15__fs_4_dstW_512_avx2: 1386.2 ( 2.46x) Cascade Lake: hscale_8_to_15__fs_4_dstW_512_c: 3231.3 ( 1.00x) hscale_8_to_15__fs_4_dstW_512_sse2: 517.9 ( 6.24x) hscale_8_to_15__fs_4_dstW_512_ssse3: 521.6 ( 6.19x) hscale_8_to_15__fs_4_dstW_512_avx2: 1775.0 ( 1.82x) Sapphire Rapids: hscale_8_to_15__fs_4_dstW_512_c: 1840.0 ( 1.00x) hscale_8_to_15__fs_4_dstW_512_sse2: 287.9 ( 6.39x) hscale_8_to_15__fs_4_dstW_512_ssse3: 293.8 ( 6.26x) hscale_8_to_15__fs_4_dstW_512_avx2: 219.2 ( 8.40x)
* avcodec/libjxldec: consume input on errorLeo Izen2025-09-061-1/+9
| | | | | | | | | libjxl consumes no input if it returns an error, so this loops over and over while it spits out the same error many times. If we got an error from libjxl and consumed no input, then we instead consume the whole packet. Signed-off-by: Leo Izen <[email protected]>
* avcodec/decode: treat orientation 1 as valid displaymatrixLeo Izen2025-09-064-7/+31
| | | | | | | | | | Since 9dc79241d9680fc050376bb0cc37875a41d00cc9 we now always pop the orientation off of the IFD and use a display matrix instead. This means we should not produce a warning and refuse if the orientation field indicates a default orientation (i.e. 1). Signed-off-by: Leo Izen <[email protected]> Reported-by: Ramiro Polla <[email protected]>
* avformat/mov: fix unused variable entry in parse_exif_itemZhao Zhili2025-09-061-1/+0
|
* avcodec/pcm: fix some unused variables/functions warningZhao Zhili2025-09-061-7/+7
| | | | v is unused when ALAW/MULAW/VIDC are disabled.
* avcodec/pcm: use stricter conditional expressions for compilationZhao Zhili2025-09-062-31/+16
|
* avfilter/Makefile: Add dependencies for premultiply_dynamic filterAndreas Rheinhardt2025-09-061-0/+1
| | | | | Reviewed-by: Timo Rothenpieler <[email protected]> Signed-off-by: Andreas Rheinhardt <[email protected]>
* configure: remove openssl version check for whipJack Lau2025-09-061-9/+0
| | | | | | | | This version check for whip is unnecessary. Since several rencet patches to the configure have already added version checks for OpenSSL. Signed-off-by: Jack Lau <[email protected]>
* avformat/img2dec: support arbitrary path lengthsMarton Balint2025-09-052-24/+33
| | | | Signed-off-by: Marton Balint <[email protected]>
* avformat/img2dec: remove path limits from find_image_rangeMarton Balint2025-09-051-13/+22
| | | | Signed-off-by: Marton Balint <[email protected]>
* avformat/img2dec: do not use av_get_frame_filename result buffer if the call ↵Marton Balint2025-09-051-13/+13
| | | | | | | | | | | | | | | | | | | fails We have no way of knowing if the string was fully processed or got truncated because of a parse error so it is better to use the original path if finding an image sequence fails. We do this by explicitly falling back to the PT_NONE mode if the provided filename is not a valid pattern but the file exists or if the IO context is already open. This also means that filenames no longer need to be escaped even in sequence mode if an invalid sequence (a sequence without %d) is provided, so a command line such as ffmpeg -f image2 -i "100%.jpg" will just work, but "100%%.jpg" will no longer work. Signed-off-by: Marton Balint <[email protected]>
* avformat/webm_chunk: support for arbitrary path lengthsMarton Balint2025-09-051-12/+10
| | | | Signed-off-by: Marton Balint <[email protected]>
* avformat/segment: support arbitrary path lengthsMarton Balint2025-09-051-13/+23
| | | | Signed-off-by: Marton Balint <[email protected]>
* avformat/utils: support arbitrary path lengths for av_filename_number_testMarton Balint2025-09-051-3/+6
| | | | Signed-off-by: Marton Balint <[email protected]>
* avformat/utils: add AV_FRAME_FILENAME_FLAGS_IGNORE_TRUNCATION flagMarton Balint2025-09-054-4/+8
| | | | Signed-off-by: Marton Balint <[email protected]>
* libavcodec/v4l2_buffers: avoid redefinition of USEC_PER_SEC macrocaifan32025-09-051-0/+3
| | | | | | | The macro USEC_PER_SEC is already defined in system headers on some platforms,such as Nuttx nuttx/clock.h. Check if it's already defined before defining it to avoid compiler warnings. Signed-off-by: caifan3 <[email protected]>
* MAINTAINERS: Update the entries for AMFDmitrii Ovchinnikov2025-09-051-1/+2
| | | | | | MAINTAINERS: Update the entries for AMF Alphabetized the records
* forgejo/CODEOWNERS: add myself for relevant filesDmitrii Ovchinnikov2025-09-051-0/+3
|
* configure: Improve the check for schannel DTLS constantsMartin Storsjö2025-09-051-1/+1
| | | | | | | | | | | | | | | | This amends 307983b292adb60c82e75c8e5e41deedc89efbf0 to fix building with older versions of mingw-w64. The previously checked constant, SP_PROT_DTLS1_X_CLIENT, was added in mingw-w64 in df36f5deda23192d0ee99ffd661ea36df924e667 in 2020, and is included in released versions since v8.0.0. The new checked constant SECPKG_ATTR_DTLS_MTU was added in mingw-w64 in 0792283787cca8fc27dd38671107c791c87f4db3 in 2021, and first appeared in mingw-w64 v9.0.0. This fixes building with mingw-w64 v8, which is the version bundled in Ubuntu 22.04.
* avcodec/videotoolboxenc: support global_quality without qscaleZhao Zhili2025-09-051-2/+4
|
* avcodec/videotoolboxenc: fix the loss of precision when calculating qualityZhao Zhili2025-09-051-6/+4
|
* Replace uxtl with umull in dmvr_hv_8Krzysztof Pyrkosz2025-09-051-20/+9
| | | | | | | | | | | Before and after on A78: dmvr_hv_8_12x20_neon: 205.3 ( 5.21x) dmvr_hv_8_20x12_neon: 171.8 ( 3.15x) dmvr_hv_8_20x20_neon: 282.7 ( 3.11x) dmvr_hv_8_12x20_neon: 172.7 ( 5.58x) dmvr_hv_8_20x12_neon: 133.3 ( 3.36x) dmvr_hv_8_20x20_neon: 214.6 ( 3.40x)
* avformat/tls_gnutls: cleanup the pointer nameJack Lau2025-09-051-29/+29
| | | | | | | | Pure cleanup, no functional changes Unify local pointer names to `TLSContext *c` and `TLSShared *s` to reduce confusion from inconsistent names (e.g. p, s, c) Signed-off-by: Jack Lau <[email protected]>
* avformat/whip: simplify the udp read in whip_write_packetJack Lau2025-09-051-9/+14
| | | | | | | | Reduce nested if statements to make the code structure clearer Add logic to check if EOF is received from UDP socket. Signed-off-by: Jack Lau <[email protected]>
* avformat/whip: fix potential 8bit overflow for profile_idcJack Lau2025-09-051-6/+5
| | | | | | | The profile contains profile_idc and constraint_set*_flag, throws away high 8 bit flags and then we get profile_idc. Signed-off-by: Jack Lau <[email protected]>
* avformat/whip: fix 8 bits overflow and map constraint_set bits for H264Jack Lau2025-09-051-3/+4
| | | | | | | | | | | | profile_iop is an 8 bits field. Previous code copied AVCodecParameters::profile (which can contain bits beyond 8 bits) into profile_iop, producing overflow and wrong values. This patch maps the constrained flags into the proper profile_iop bits (constraint_set1 / 3) Signed-off-by: Jack Lau <[email protected]>
* avformat/whip: make time measure more preciseJack Lau2025-09-051-25/+25
| | | | | | | | | | Use av_gettime_relative() replace av_gettime() to get better measure Changed the display precision from showing only integers to showing two decimal places (in milliseconds) Signed-off-by: Jack Lau <[email protected]>
* avformat/whip: fix SDP ICE candidates parsingJack Lau2025-09-051-5/+5
| | | | | | | | | | | fix issue #20407 Refer to RFC 5245 15.1, the foundation may be any string up to 32 chars. The old code could misread foundations as transport("udp"). This patch fully parse all these attr to avoid parsing error. Signed-off-by: Jack Lau <[email protected]>
* avformat/whip: add PRIORITY and ICE_CONTROLLING for STUN binding requestJack Lau2025-09-051-2/+27
| | | | | | | | | | | | | fix issue #20402 See RFC 8445 7.1, The PRIORITY and ICE-CONTROLLED or ICE-CONTROLLING must be included in a Binding request. FFmpeg is always ICE Controlling role so we use ICE-CONTROLLING attr. Co-author-by: Sergio Garcia Murillo <[email protected]> Signed-off-by: Jack Lau <[email protected]>
* fate/filter-audio: update acrossfade to test multiple inputsNiklas Haas2025-09-042-24/+6
|
* avfilter/af_afade: support multiple inputsNiklas Haas2025-09-042-54/+98
| | | | | | | | | | | | | Instead of just 2 files, generalize this filter to support crossfading arbitrarily many files. This makes the filter essentially operate similar to the `concat` filter, chaining multiple files one after another. Aside from just adding more input pads, this requires rewriting the activate function. Instead of a finite state machine, we keep track of the currently active input index; and advance it only once the current input is fully exhausted. This results in arguably simpler logic overall.
* avfilter/af_afade: shorten crossfade on too short inputsNiklas Haas2025-09-041-21/+65
| | | | | | | | | | | | | | | | This behavior is currently completely broken, leading to an abrupt end of the first audio stream. I want to generalize this filter to multiple inputs, but having too short input files will always represent a significant problem. I considered a few approaches for how to handle this more gracefully, but most of them come with their own problems; in particular when a short input is sandwiched between two longer ones; or when there is a sequence of short inputs. In the end, it's simplest to just shorten the crossfade window. I also considered (and tested) padding the input with silence, but this also has its own aesthetic implications and strange edge cases. See-Also: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20388
* avfilter/af_afade: don't leak memory on errorNiklas Haas2025-09-041-0/+1
| | | | This first frame was never cleaned up if the second input fails.
* avfilter/af_afade: generalize pass_crossfade() signatureNiklas Haas2025-09-041-6/+6
| | | | Prerequisite to an upcoming refactor.
* all: Use "" instead of <> to include internal headersAndreas Rheinhardt2025-09-045-11/+9
| | | | | Reviewed-by: Niklas Haas <[email protected]> Signed-off-by: Andreas Rheinhardt <[email protected]>
* swscale/ops: Fix linking with x86 assembly disabledAndreas Rheinhardt2025-09-041-1/+1
| | | | | Reviewed-by: Niklas Haas <[email protected]> Signed-off-by: Andreas Rheinhardt <[email protected]>
* avcodec/mjpegdec: ignore APPx stubs unless AV_EF_EXPLODE is setRamiro Polla2025-09-041-8/+10
| | | | | | | | | Consider APPx fields that are too short to contain an id field (32-bit) as stubs, and ignore them if AV_EF_EXPLODE is not set. This has been seen in the MJPEG output from some webcams (such as the Logitech C270 and C920) and the JPEG images embedded in DNG images from the Pentax K-1 camera.