847 Commits
Author SHA1 Message Date
Michael Niedermayer 369a50fe75 tools/target_dec_fuzzer: Bound cumulative get_buffer allocation
Fixes: Timeout
Fixes: 509366072/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_H264_fuzzer-4588961581563904
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-06-12 01:56:23 +00:00
Michael Niedermayer 5622d515e8 tools/target_dec_fuzzer: reduce 4XM max pixels to avoid timeout
Fixes: Timeout
Fixes: 511356573/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_FOURXM_fuzzer-5010010110492672
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-06-08 01:21:12 +00:00
Michael Niedermayer 0aa316ec2c tools/target_dec_fuzzer: reduce BMP max pixels to avoid RLE timeout
a valid RLE bitmap can decompress to far more than its input size, an early end-of-picture code
leaves the rest of the canvas blank, thus we cannot add a check in bmp decode

Fixes: Timeout
Fixes: 510821718/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_BMP_DEC_fuzzer-5011979420106752
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-06-05 11:46:17 +00:00
Michael Niedermayer 2cce6ad030 tools/target_dem_fuzzer: do not exit on io_buffer allocation failure
Failure to allocate a randomly sized buffer should not count as a anomaly in the fuzzer
there is nothing to fix in that case

Fixes: 490112574/clusterfuzz-testcase-minimized-ffmpeg_dem_TMV_fuzzer-6600485921685504
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-06-05 01:14:43 +00:00
James Almer 18b83f2d0a tools/zmqsend: close the input FILE
Fixes CVE-2026-30998

Fixes: Resource leak
Found-by: Xinghang Lv
Signed-off-by: James Almer <jamrial@gmail.com>
2026-05-15 20:35:56 -03:00
James Almer 144af8f81a tools/zmqsend: free the AVBprint buffer after using it
Fixes CVE-2026-30999

Fixes: memleak
Found-by: Xinghang Lv
Signed-off-by: James Almer <jamrial@gmail.com>
2026-05-15 20:32:24 -03:00
Martin Storsjö 397c7c7524 tools/check_arm_indent: Run formatting on arm, in addition to aarch64
Add exceptions for files that aren't handled well (or that would
require more manual cleanups to make the output look good).
2026-04-29 13:53:07 +03:00
Martin Storsjö f6b21eca5e tools/check_arm_indent: Add missing ;; in switch case, fix indentation 2026-04-29 13:53:07 +03:00
Martin Storsjö ea7079074c tools/indent_arm_assembly: Don't indent "foo .req bar" lines like an instruction
These are used a bit in our arm assembly, while they're used much
less in our aarch64 assembly.
2026-04-29 13:49:27 +03:00
Martin Storsjö cd7a3cd799 tools/indent_arm_assembly: Recognize more comment forms, for skipping lowercasing
When we try to lowercase register names (e.g. Q0 -> q0) we avoid
doing that for parts of the code that are comments, as comments
occasionally contain pseudocode that contain such mentions that
aren't register names, but pseudocode/reference code variables.
See 7ebb6c54eb for more details
about that.

In addition to recognizing comments starting with //, also
recognize /* and @ (which is a comment char in arm assembly, but
not in aarch64).
2026-04-29 13:49:27 +03:00
Pierre-Anthony LemieuxandPierre-Anthony Lemieux dfc5d176c9 fuzzer: improve documentation 2026-03-14 21:36:58 +00:00
Michael Niedermayer 3827b3f1f0 tools/target_dec_fuzzer: Adjust threshold for G2M
Fixes: Timeout
Fixes: 473651750/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_G2M_fuzzer-6214373279596544

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-02-23 23:45:14 +01:00
Michael Niedermayer bebea1e8e3 tools/target_dec_fuzzer: Adjust threshold for XAN_WC3
Fixes: Timeout
Fixes: 472673591/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_XAN_WC3_fuzzer-6171459778314240

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-02-23 23:37:09 +01:00
Michael Niedermayer ce05529180 tools/target_dec_fuzzer: Adjust threshold for CPIA
Fixes: Timeout
Fixes: 472564084/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_CPIA_fuzzer-5597833073065984

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-02-23 23:32:47 +01:00
Michael Niedermayer 9c5e6a319c tools/target_dec_fuzzer: Adjust threshold for QOI
Fixes: Timeout
Fixes: 472177584/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_QOI_DEC_fuzzer-5417966922694656

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-02-23 23:32:06 +01:00
Michael Niedermayer f81d6479ec tools/target_dec_fuzzer: Adjust threshold for MPC8
Fixes: Timeout
Fixes: 471587345/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MPC8_fuzzer-4824233864921088

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-02-23 23:15:19 +01:00
Michael Niedermayer c8b57f0a1e tools/target_dec_fuzzer: Adjust threshold for BFI
Fixes: timeout
Fixes: 471606773/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_BFI_fuzzer-6707440390569984

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-02-23 23:14:44 +01:00
Michael Niedermayer a7a009a3eb tools/target_dec_fuzzer: Adjust threshold for JV
Fixes: Timeout
Fixes: 472108726/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JV_fuzzer-5265024680787968

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-02-18 08:18:44 +00:00
Michael Niedermayer ee7a15f0a2 tools/target_dec_fuzzer: adjust threshold for MAGICYUV
Fixes: Timeout
Fixes: 471975516/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MAGICYUV_DEC_fuzzer-5987279668838400

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-02-05 16:50:26 +01:00
Martin Storsjö 7ebb6c54eb tools: Lowercase more patterns in aarch64 assembly
Match more SVE/SME specific details.

Also lowercase all register names. As this matches many cases
of code comments that refer to variables elsewhere, not specific
registers, we only apply this tranformation on the part of lines
before a potential comment.
2026-01-30 05:21:27 +00:00
Michael Niedermayer 14ec28df5f tools/target_dec_fuzzer: Adjust threshold for ZMBV
Fixes: Timeout
Fixes: 464041539/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ZMBV_DEC_fuzzer-4758337414823936

Found-by:  continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2026-01-15 19:49:43 +01:00
Kacper Michajłow 9cd4be6d7c tools/sofa2wavs: fix build on Windows
Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
2025-11-29 21:43:12 +00:00
Martin Storsjö 8b71eeb72e tools: Make indent_arm_assembly.pl able to reformat a file in place
This allows using the tool for one-off reindentations without needing
the check_arm_indent.sh script (e.g. for use outside of ffmpeg),
without having to pipe the file through stdin/stdout.
2025-11-24 23:02:05 +02:00
Andreas Rheinhardt 2a90e7d725 av{codec,util}/tests: Remove pointless undefs
Before commit e96d90eed6 lavu/internal.h
contained redefined various discouraged/forbidden functions to induce
compilation failures upon use, like e.g.
 #define malloc please_use_av_malloc
In order to use these functions, some files had to undefine these
macros. This commit removes the remaining pointless undefs.

Reviewed-by: Rémi Denis-Courmont <remi@remlab.net>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2025-11-24 16:48:31 +01:00
Michael Niedermayer 51d3c4b4b6 tools/target_dec_fuzzer: Adjust threshold for PIXLET
Fixes: Timeout
Fixes: 425754611/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PIXLET_fuzzer-4778526102585344

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-10-19 02:07:03 +02:00
Michael Niedermayer 56ef66d350 tools/target_dec_fuzzer: Adjust threshold for CRI
Fixes: Timeout
Fixes: 421997576/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_CRI_fuzzer-5335057265131520

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-10-19 01:37:17 +02:00
Michael Niedermayer b132c1755a tools/target_dec_fuzzer: Adjust threshold for qdraw
Fixes: Timeout
Fixes: 421954735/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_QDRAW_fuzzer-4515776981172224

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-10-19 01:37:14 +02:00
Michael Niedermayer 8988734d09 tools/target_dec_fuzzer: Adjust threshold for CAVS
Fixes: Timeout
Fixes: 421951267/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_CAVS_fuzzer-4766360421072896

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpe
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-10-19 01:37:10 +02:00
Michael Niedermayer 51f0f2d2cf tools/target_dec_fuzzer: Adjust threshold for interplay video
Fixes: Timeout
Fixes: 421945523/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_INTERPLAY_VIDEO_fuzzer-4776910965506048

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-10-19 01:37:06 +02:00
Timo RothenpielerandMartin Storsjö 4c80cda08a forgejo: make aarch64 asm linter part of pre-commit
Needed some minor semantical changes to the shell wrapper, since
pre-commit expects it to exit with an error when applying fixes.
2025-09-13 20:58:29 +00:00
Martin Storsjö a3ce337926 tools: Add scripts for indenting and checking aarch64 assembly
The same also applies for arm assembly, but there are more known
deviations within that.

Add a script which checks all files, except for a few known files
that deviate, for various reasons.
2025-09-13 20:58:29 +00:00
Michael Niedermayer fd31df4306 tools: Split the list of source plugins out of "merge-all-source-plugins" 2025-08-13 11:50:52 +00:00
Michael Niedermayer b5b306ca31 tools/merge-all-source-plugins: Fix merge_internal() return code
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-08-13 11:50:52 +00:00
Kacper Michajłow 48b941d543 tools/fourcc2pixfmt: fix getopt return value type
Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
2025-08-11 19:29:53 +00:00
Kacper Michajłow 082e2b26d4 tools/graph2dot: fix getopt return value type
Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
2025-08-11 19:29:53 +00:00
Kacper Michajłow c24b9b4b73 tools/target_fuzzer: don't spam stderr
Printing dummy logs during fuzzing can significantly slow the process
and blow the size of logs, making them both unredable and huge.

Keep the loggging commented-out for easy local restore if needed.

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
2025-08-05 03:27:54 +02:00
Timo Rothenpieler 262d41c804 all: fix typos found by codespell 2025-08-03 13:48:47 +02:00
Michael Niedermayer 23c60ce742 tools/target_dec_fuzzer: Set ALS max order to 15 (ALS simple profile)
Fixes: Timeout
Fixes: 429645375/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ALS_fuzzer-5377900448907264

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-28 17:27:52 +02:00
Peter Ross 3b9dbda49b tools/pktdumper: dump extradata buffers 2025-07-01 16:45:08 +10:00
Derek Buitenhuis b58cca5a27 tools: Remove libav-merge-next-commit
Libav is no longer extant.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2025-06-30 15:00:34 +01:00
Michael Niedermayer f06474faf8 tools/target_dec_fuzzer: adjust threshold for VP8
Fixes: Timeout
Fixes: 416589179/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VP8_fuzzer-5432788428062720

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-06-23 16:29:34 +02:00
Michael Niedermayer 6e5f47f6d3 tools/target_dec_fuzzer: Adjust RV60 threshold
Fixes: Timeout
Fixes: 410324670/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_RV60_fuzzer-5697706586865664

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-06-23 14:36:07 +02:00
Kacper MichajłowandMichael Niedermayer d811966ba6 tools/target_dem_fuzzer: remove unused fuzz_tag
Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-06-07 14:33:27 +02:00
Kacper MichajłowandMichael Niedermayer dc9794d340 tools/target_dem_fuzzer: make fuzz data pointer constant
Mostly to avoid warnings.

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-06-07 14:33:26 +02:00
Kacper MichajłowandMichael Niedermayer ccfea9696f tools/target_dec_fuzzer: suppress Wunused-function
Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-06-07 14:33:26 +02:00
Michael Niedermayer f51c385a8e tools/merge-all-source-plugins: Check that there are no uncommited changes
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-05-15 16:19:59 +02:00
Michael Niedermayer a06b86a09b tools/merge-all-source-plugins: Try merging a tag or branch matching the current version
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-05-15 16:19:58 +02:00
Michael Niedermayer 12b853530a Add tools/merge-all-source-plugins
Simple script to merge all source plugins.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-05-15 12:17:04 +02:00
Michael Niedermayer 8168ebdcc5 tools/target_dec_fuzzer: Adjust threshold for WEBP
Fixes: Timeout
Fixes: 403345121/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_WEBP_fuzzer-6408323910139904

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-05-15 03:03:56 +02:00
Michael Niedermayer 8c920c4c39 Remove libpostproc
Libpostproc will be available as source plugin at
https://github.com/michaelni/FFmpeg/tree/sourceplugin-libpostproc
OR
https://github.com/michaelni/libpostproc

whatever turns out more convenient to maintain

For the upcoming 8.0 release, libpostproc will be included, so as not to
cause delays or inconveniences

Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2025-05-07 15:35:47 +02:00