Skip to content
/ FFmpeg Public
forked from FFmpeg/FFmpeg
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
10000 commits
Select commit Hold shift + click to select a range
fb7558d
avformat/http: avoid int overflow
haasn Feb 15, 2026
f5ddf1c
avformat/http: fix http_connect() offset mismatch error code
haasn Feb 15, 2026
142d999
avformat/http: restore offset on http_open_cnx() failure
haasn Feb 15, 2026
fcc1a03
avformat/http: move retry label (cosmetic)
haasn Feb 15, 2026
7a348f6
avformat/http: close stale connection on wrong seek
haasn Feb 15, 2026
613925a
avformat/http: fix Cache-Control header parsing
haasn Feb 15, 2026
8d3b044
avformat/mov: check for duplicate stsd before changing state
michaelni Feb 9, 2026
78f6cec
tests/checkasm: add rgb24tobgr24 test
Mar 2, 2026
ddd720a
swscale/aarch64: add NEON rgb24tobgr24 byte-swap
Mar 2, 2026
86a6238
tests/checkasm: add rgb32tobgr24 and rgb24tobgr32 tests
Mar 2, 2026
2c7fe8d
swscale/aarch64: add NEON rgb32tobgr24 and rgb24tobgr32 conversions
Mar 2, 2026
9d73d10
avformat,avcodec: use PRI format macros for uint32_t in log messages
nico-zs Feb 26, 2026
5b39be1
swscale: fix build on --disable-unstable
haasn Mar 4, 2026
1512e52
swscale: switch to refstruct for hw_priv
haasn Mar 4, 2026
cef2fbf
swscale/vulkan: fix include order (cosmetic)
haasn Mar 4, 2026
9043141
aarch64/vvc: Optimisations of put_luma_hv() functions for 10/12-bit
Mar 3, 2026
5b8a4a0
avcodec/d3d12va_encode_h264: simplify deblock default option
tong1wu Feb 28, 2026
e686f53
fftools/ffplay: improve keyboard shortcut documentation
add-uos Feb 28, 2026
a0d2370
aarch64: Switch to a more correct Windows flag for detecting I8MM
mstorsjo Mar 4, 2026
70691bb
configure: add detection of assembler support for SME2
Mar 2, 2026
905348d
configure: add detection of SME-I16I64 extension
Mar 2, 2026
0edd75e
aarch64/asm.S: to support SME added macro to save/restore registers d…
Dec 19, 2025
510999f
aarch64/vvc: sme2 optimisation of alf_filter_luma() 8/10/12 bit
Mar 3, 2026
8324c8e
checkasm: ac3dsp: Increase the float tolerance for sum_square_butterf…
mstorsjo Mar 3, 2026
1fc7464
libavcodec/huffyuvdsp: Add NEON optimization for the add_int16 function
Mar 1, 2026
cbbe68f
avcodec/snowenc: avoid NULL ptr arithmetic
michaelni Feb 14, 2026
f10c0ae
avformat/mov: Fix multiple issues related to mov_read_iref_dimg()
jamrial Mar 3, 2026
74cfcd1
aarch64/vvc: Fix DCE undefined references with MSVC
mstorsjo Mar 5, 2026
77298c2
avformat/mov: check return value of mov_read_iref_cdsc()
jamrial Mar 5, 2026
fe86fd0
fftools/ffprobe: do not show refs when not processing frames
ngaullier Jan 23, 2026
576de00
lavc: Split out common components used by vulkan prores encoder
raphaelthegreat Sep 3, 2025
cebe0b5
lavc: implement a Vulkan-based prores encoder
raphaelthegreat Sep 3, 2025
3291afd
libavutil: hwcontext_amf: remove unreachable statements
commodo Mar 2, 2026
6e322fa
configure: warn about excessive stack usage
kasper93 Feb 28, 2026
493dfc3
swscale/swscale_internal: fix typos in flag names
ramiropolla Mar 5, 2026
5384908
swscale/ops: move pass compilation logic to helper function
haasn Feb 27, 2026
4178c4d
swscale/ops: remove unneeded macro
haasn Feb 7, 2026
68f3886
swscale/ops_dispatch: split off compile/dispatch code from ops.c
haasn Feb 27, 2026
cc334a2
swscale/ops_backend: move static table out of function body
haasn Mar 5, 2026
b4bcb00
swscale/ops: add and use ff_sws_op_list_input/output()
haasn Mar 5, 2026
4b5122b
swscale/ops_dispatch: move on-stack mutation to ops backends
haasn Mar 5, 2026
d9e594c
swscale/graph: have ff_sws_graph_add_pass() return an error code
haasn Mar 3, 2026
1c2a300
swscale/graph: remove pointless helper
haasn Mar 3, 2026
d707a4a
avcodec/pnmdec: Check input size against width*height assuming at lea…
michaelni Feb 6, 2026
8970658
avfilter/vf_convolution: Use avpriv_mirror
michaelni Feb 24, 2026
e24b982
avfilter/vf_convolution: Handle corner cases with small frames
michaelni Feb 24, 2026
394a7ff
avformat: Add ff_format_check_set_url()
michaelni Feb 26, 2026
2326bc5
avformat/rtsp: Use ff_format_check_set_url()
michaelni Feb 26, 2026
88eb772
avformat/rtsp: Pass blacklist
michaelni Feb 27, 2026
ea9e85e
avformat/rtsp: Explicitly check protocol
michaelni Feb 27, 2026
e5c1ca6
avcodec/cbs_h266_syntax_template: bound slice width/height by remaini…
michaelni Feb 18, 2026
20cade1
doc/developer: Favor SI units where applicable
michaelni Mar 4, 2026
ba38fa2
avfilter: update deinterlace_d3d12 filter options name
Mar 5, 2026
6fdbb5a
avfilter/dnn: fix missing set default value to options
quink-black Mar 4, 2026
987d13d
avformat/avformat: Fix warning: assignment discards const qualifier f…
michaelni Mar 6, 2026
5d3ad4f
avutil/error: Fix overflow when negating
mkver Mar 5, 2026
47f89ea
swscale: explicitly track if a context is "legacy" or not
haasn Feb 26, 2026
f177672
avcodec/x86/vvc/of: Avoid unnecessary additions
mkver Feb 22, 2026
c620535
avcodec/x86/vvc/of: Avoid initialization, addition for first block
mkver Feb 22, 2026
dee361a
avcodec/x86/vvc/of: Avoid initialization, addition for last block
mkver Feb 22, 2026
e7e19fc
avcodec/x86/vvc/of: Avoid unnecessary jumps
mkver Feb 22, 2026
d6ed5d6
avcodec/x86/vvc/of: Deduplicate writing, save jump
mkver Feb 22, 2026
8369474
avcodec/x86/vvc/of,dsp_init: Avoid unnecessary wrappers
mkver Feb 22, 2026
9fe9fd9
avcodec/x86/vvc/of: Only clip for >8bpp
mkver Feb 28, 2026
2a93d09
avcodec/x86/vvc/of: Ignore upper lane for width 8
mkver Feb 28, 2026
2159e40
avcodec/x86/vvc/of: Avoid jump
mkver Feb 28, 2026
94f9ad8
avcodec/x86/vvc/alf: Use immediate for shift when possible
mkver Feb 28, 2026
a8b3b9c
avcodec/x86/vvc/alf: Remove unused array
mkver Feb 28, 2026
43cc8f0
avcodec/x86/vvc/alf: Don't clip for 8bpp
mkver Feb 28, 2026
56a4c15
avcodec/x86/vvc/alf: Avoid checking twice
mkver Feb 28, 2026
9cb5280
avcodec/x86/vvc/alf: Improve storing 8bpp
mkver Feb 28, 2026
01a8970
avcodec/x86/vvc/alf: Use xmm registers where sufficient
mkver Feb 28, 2026
a2d9cd6
avcodec/x86/vvc/alf: Don't calculate twice
mkver Feb 28, 2026
e4a9d54
avcodec/x86/vvc/alf: Avoid nonvolatile registers
mkver Feb 28, 2026
1bc91eb
avcodec/x86/vvc/alf: Avoid checking twice
mkver Feb 28, 2026
df7885d
avcodec/x86/vvc/alf: Improve writing classify parameters
mkver Feb 28, 2026
a489a62
avcodec/x86/vvc/alf: Use memory sources directly
mkver Feb 28, 2026
c9da019
avcodec/x86/vvc/alf: Don't use 64bit where unnecessary
mkver Mar 1, 2026
5da3cab
avcodec/x86/vvc/alf: Avoid broadcast
mkver Mar 1, 2026
d2e7fe5
avcodec/x86/vvc/alf: Improve deriving ac
mkver Mar 1, 2026
38062eb
avcodec/x86/vvc/alf: Remove pointless counter, stride
mkver Mar 2, 2026
cb5f6c0
avcodec/x86/vvc/alf: Don't modify rsp unnecessarily
mkver Mar 2, 2026
467f8d8
avcodec/x86/vvc/alf: Improve offsetting pointers
mkver Mar 2, 2026
1960320
avcodec/x86/vvc/alf: Avoid pointless wrappers for alf_filter
mkver Mar 3, 2026
0ddece4
avcodec/x86/vvc/alf: Simplify vb_pos comparisons
mkver Mar 3, 2026
6084f07
avcodec/utils: fix duration computation based on frame_bytes
michaelni Feb 22, 2026
dc9bf66
swscale/utils: initialize chroma when luma switched to cascade
michaelni Mar 3, 2026
a591800
swscale/output: Fixes integer overflow in yuv2planeX_8_c
michaelni Mar 3, 2026
9adced3
avfilter/vf_scale: Fix integer overflow in config_props()
michaelni Mar 3, 2026
946ce12
swscale/utils: Check *Inc
michaelni Mar 3, 2026
1e63151
swscale/output: Fix integer overflow in alpha in yuv2rgba64_1_c_templ…
michaelni Mar 3, 2026
d5e2e67
avcodec/magicyuv: fix small median images
michaelni Mar 3, 2026
6023ad7
avformat/mlvdec: avoid uninitialized read in read_string()
michaelni Mar 4, 2026
252ab61
avutil/frame: fix typos
ramiropolla Mar 6, 2026
9f0441a
swscale/x86/input: don't overread input in RGB24_TO_UV_FN
jamrial Mar 1, 2026
282cf44
avcodec/cbs_av1: don't try to write a Redundant Frame Header as a nor…
jamrial Mar 3, 2026
a1496ce
avcodec/av1dec: sync frame header and tile group behavior with CBS
jamrial Mar 3, 2026
20cf8be
doc/filters: add entry for deinterlace_d3d12
Mar 3, 2026
1e7d7c4
fftools/ffmpeg_demux: Check metadata provided filename
michaelni Feb 19, 2026
c4ee599
avcodec/aac/aacdec_usac_mps212: Fix invalid shift
michaelni Mar 5, 2026
c2364e9
avcodec/aac/aacdec_usac_mps212: Fix invalid array index
michaelni Mar 5, 2026
4a390fc
avformat/rtpenc: validate MPEG-TS RTP payload size
devrajajmera077-hash Mar 2, 2026
e7e001a
aacdec_usac_mps212: fix CID 1681705
cyanreg Mar 2, 2026
558738a
aacdec_usac_mps212: Fix CID 1681704
cyanreg Mar 2, 2026
46cf8f1
aacdec_usac_mps212: fix CID 1681703
cyanreg Mar 2, 2026
c40318d
aacdec_usac_mps212: Fix CID 1681701
cyanreg Mar 2, 2026
b8a4d8a
aacdec_usac_mps212: fix CID 1681700
cyanreg Mar 2, 2026
8f2dea9
Changelog: add entry for the prores Vulkan encoder
cyanreg Mar 7, 2026
5a6eeed
vulkan_ffv1: warn users on low number of slices
cyanreg Mar 7, 2026
6dd4469
swscale/utils: don't abort early in sws_freeContext() for non legacy API
jamrial Mar 7, 2026
38c578b
swscale_x86/swscale_template: Remove unused macros
mkver Mar 6, 2026
ee72731
tests/fate/vcodec: Test intra_dc_precision
mkver Jun 27, 2025
9051caa
avcodec/mpegvideo_enc: Inline intra_dc_precision when known
mkver Jun 27, 2025
27d95c3
avcodec/mpegvideo_enc: Move dimension-alignment check to rv10enc.c
mkver Jun 28, 2025
8a431cd
avcodec/rv10enc: Check dimensions once during init
mkver Jun 28, 2025
76a005d
avcodec/rv10enc: Set encode_picture_header in rv10_encode_init()
mkver Jun 28, 2025
cdc632e
avcodec/mpegvideo_enc: Ignore intra_dc_precision for non-MPEG-2
mkver Jul 2, 2025
f37cfb3
avcodec/avcodec: Deprecate intra_dc_precision
mkver Jul 3, 2025
2f9d3ce
avcodec/h261dec: Don't pretend decoding a skipped macroblock can fail
mkver Jul 3, 2025
c23d56b
avcodec/codec_desc: add a codec prop to signal enhancement layers
jamrial Mar 6, 2026
8add479
avcodec/parser: set avctx->pix_fmt for codecs with the enhancement pr…
jamrial Mar 6, 2026
c6057f4
fftools/ffmpeg_mux_init: don't autoselect video codecs known to lack …
jamrial Mar 6, 2026
58052b4
avcodec/codec_desc: make LCEVC a video media type
jamrial Mar 6, 2026
0cd4bb2
avcodec: add an LCEVC parser
jamrial Mar 2, 2026
b9cb948
avformat/mpegts: add support for LCEVC streams
jamrial Mar 2, 2026
ebf70aa
avformat/demux: update Stream Groups in avformat_find_stream_info() f…
jamrial Mar 7, 2026
82c55b7
Changelog: Add Version 8.1 marker
michaelni Mar 8, 2026
5e933b4
doc/APIchanges: Fill in missing values
michaelni Mar 8, 2026
67c8862
Bump versions for release/8.1
michaelni Mar 8, 2026
c1263a3
Bump versions for master after release/8.1
michaelni Mar 8, 2026
e5e8efa
libavformat/mov.c: Fix seek in fragmented mp4 files where the audio a…
toots Jan 2, 2026
248b481
avcodec/bsf/extract_extradata: Check that block_size is not negative
michaelni Mar 7, 2026
31c2f81
avformat/tls_gnutls: fix DTLS handshake failure in some WebRTC cases
qwerzoid Mar 1, 2026
f0a28cf
avcodec/x86/pngdsp: Don't use mmx register in ff_add_bytes_l2_sse2()
mkver Mar 5, 2026
a8679f4
avcodec/x86/pngdsp: Avoid jump
mkver Mar 5, 2026
32b42df
avcodec/x86/pngdsp: Don't use 64bit unnecessarily
mkver Mar 5, 2026
4792440
swscale/unscaled: fix planarCopyWrapper for float formats with same e…
ramiropolla Mar 6, 2026
2862fa3
tests/checkasm: Add pixelutils test
mkver Mar 4, 2026
c9e056b
avutil/x86/pixelutils: Remove pointless AVX2 sad32x32 functions
mkver Mar 4, 2026
085f06a
avutil/pixelutils: Don't unconditionally include arch-specific header
mkver Mar 4, 2026
e114c63
avutil/x86/pixelutils: Avoid near-empty header
mkver Mar 4, 2026
022c426
avutil/aarch64: Add neon optimizations for pixelutils
mkver Mar 4, 2026
9b84b86
avutil/riscv: Add rvv optimizations for pixelutils
mkver Mar 4, 2026
471db1d
avutil/arm: Add armv6 optimizations for pixelutils
mkver Mar 4, 2026
1a9c345
avutil/mips: Add msa optimizations for pixelutils
mkver Mar 5, 2026
1d16161
swscale/ops: use SwsCompFlags typedef instead of plain int
haasn Feb 12, 2026
1addde5
swscale/ops: add ff_sws_op_type_name
haasn Feb 16, 2026
eebc07a
swscale/ops: simplify ff_sws_op_list_print
haasn Feb 16, 2026
b8cd331
swscale/vulkan/ops: log op name in generated shader
haasn Feb 26, 2026
104475e
swscale/vulkan/ops: fix undefined behavior on SWS_OP_CLEAR
haasn Mar 6, 2026
b6ebee0
swscale/vulkan/ops: move fractional read/write rejection to implement…
haasn Mar 6, 2026
32554fc
swscale/vulkan/ops: move buffer desc setting to helper function
haasn Mar 6, 2026
a31973e
swscale/ops_dispatch: avoid redundant ff_sws_op_list_update_comps()
haasn Mar 1, 2026
f77ab89
swscale/ops_dispatch: print op list on successful compile
haasn Mar 5, 2026
a534156
swscale/graph: pass SWS_OP_FLAG_OPTIMIZE
haasn Feb 26, 2026
b52df46
tests/checkasm/sw_ops: fix exec.slice_h assignment
haasn Mar 4, 2026
76c60b1
swscale: restructure sws_scale_frame() slightly
haasn Feb 22, 2026
dd75b6b
swscale: add sanity clear on AVFrame *dst
haasn Mar 6, 2026
9b7439c
swscale: don't pointlessly loop over NULL buffers
haasn Mar 6, 2026
9768215
swscale/vulkan/ops: move buffer desc setting to helper function
haasn Mar 6, 2026
fdc0a66
swscale/graph: skip threading for single-slice passes
haasn Mar 6, 2026
254c07b
swscale/graph: rename sws_filter_run_t to SwsPassFunc
haasn Mar 6, 2026
5b8889f
swscale/graph: add typedef for SwsPassSetup
haasn Mar 7, 2026
42a4783
swscale/graph: add setup()/free() to ff_sws_graph_add_pass() signature
haasn Mar 7, 2026
2e29833
swscale/graph: have ff_sws_graph_add_pass() free priv on failure
haasn Mar 7, 2026
9571f5c
swscale/graph: simplify ff_sws_graph_add_pass() usages
haasn Mar 7, 2026
911176c
swscale/ops_dispatch: add SwsCompiledFunc.opaque
haasn Mar 7, 2026
143cb56
swscale/vulkan/ops: use opaque run function
haasn Mar 7, 2026
bd9590d
swscale/ops_dispatch: remove unnecessary SwsOpExec fields
haasn Mar 7, 2026
68046d0
Revert "swscale/vulkan/ops: move buffer desc setting to helper function"
haasn Mar 9, 2026
3f10a05
fftools/ffmpeg: fix read_key() always return 255 when there was no input
nyanmisaka Mar 9, 2026
f6894de
avfilter/vf_hqdn3d: Remove unnecessary emms_c()
mkver Mar 9, 2026
125bb2e
avcodec/lcevc_parser: Check that block_size is not negative
jamrial Mar 9, 2026
c1be210
aarch64/vvc: Optimisations of put_luma_h() functions for 10/12-bit
Mar 4, 2026
0992c19
avfilter/avf_showspectrum: Fix allocation check
mkver Feb 23, 2026
df7b8ca
avutil/slicethread: Fix shadowing
mkver Feb 21, 2026
3fbe80d
avutil/aes: Fix shadowing
mkver Feb 21, 2026
999c04d
avutil/channel_layout: Fix shadowing
mkver Feb 21, 2026
6a78db8
avformat/hlsenc: Fix shadowing
mkver Feb 21, 2026
33971e6
avformat/apetag: Fix shadowing
mkver Feb 21, 2026
61c22c7
avformat/yuv4mpegdec: Fix shadowing
mkver Feb 21, 2026
0037c5a
avformat/webpenc: Fix shadowing
mkver Feb 21, 2026
a2a42aa
avformat/vorbiscomment: Fix shadowing
mkver Feb 21, 2026
034b37a
avformat/vividas: Fix shadowing
mkver Feb 21, 2026
619839a
avformat/tee: Fix shadowing
mkver Feb 21, 2026
b53752d
avformat/tcp: Fix shadowing
mkver Feb 21, 2026
54672d1
avformat/srtpproto: Fix shadowing
mkver Feb 21, 2026
6aa367b
avformat/smacker: Fix shadowing
mkver Feb 21, 2026
7a0ae45
avformat/rmenc: Fix shadowing
mkver Feb 21, 2026
fd88a52
avformat/matroskaenc: Fix shadowing
mkver Feb 21, 2026
5198d88
avformat/matroskadec: Fix shadowing
mkver Feb 21, 2026
4014d35
avformat/bonk: Fix shadowing
mkver Feb 21, 2026
a49eed2
avformat/oggenc: Fix shadowing
mkver Feb 21, 2026
968511a
avformat/dhav: Fix shadowing
mkver Feb 21, 2026
378928e
avformat/mpegtsenc: Fix shadowing
mkver Feb 21, 2026
8f9239a
avformat/mpc8: Fix shadowing
mkver Feb 21, 2026
5962ca0
avformat/avidec: Fix shadowing
mkver Feb 21, 2026
1778991
avformat/avio: Fix shadowing
mkver Feb 21, 2026
9c0f942
avformat/aviobuf: Fix shadowing
mkver Feb 21, 2026
1e440f2
avformat/dovi_isom: Fix shadowing
mkver Feb 21, 2026
615d5c2
avformat/dsfdec: Fix shadowing
mkver Feb 21, 2026
51ae4f4
avcodec/cbs_av1_syntax_template: Fix shadowing
mkver Feb 21, 2026
422ad60
avformat/oggparseopus: Fix shadowing
mkver Feb 21, 2026
6de2565
avformat/rtpdec_xiph: Fix shadowing
mkver Feb 21, 2026
2ed4660
avformat/rtpenc_mpegts: Fix shadowing
mkver Feb 21, 2026
1617fee
avformat/asfdec_f: Fix shadowing
mkver Feb 21, 2026
8ddb82f
avformat/lafdec: Fix shadowing
mkver Feb 21, 2026
90dae16
avformat/http: Fix shadowing
mkver Feb 21, 2026
ba57a33
avformat/id3v2: Fix shadowing
mkver Feb 21, 2026
c0ba18c
avcodec/dv_tablegen: Fix shadowing
mkver Feb 21, 2026
78f8ef3
avcodec/wmaenc: Fix shadowing
mkver Feb 21, 2026
bffaa6a
avcodec/utvideodec: Fix shadowing
mkver Feb 21, 2026
06ea751
avcodec/mpegaudioenc: Fix shadowing
mkver Feb 21, 2026
92046bc
avcodec/cbs: Fix shadowing
mkver Feb 21, 2026
0a1606f
avcodec/hpeldsp: Fix shadowing
mkver Feb 21, 2026
7950e5d
avcodec/rka: Fix shadowing
mkver Feb 21, 2026
1bbac36
avfilter/avf_showspectrum: Avoid allocation
mkver Feb 23, 2026
b083950
avfilter/vf_blurdetect: Fix shadowing
mkver Feb 23, 2026
a4efdca
avfilter/af_apsyclip: Fix shadowing
mkver Feb 23, 2026
380e1cd
avfilter/af_afftfilt: Don't get max align multiple times
mkver Feb 23, 2026
2d9cf94
avfilter/vf_chromanr: Fix shadowing
mkver Feb 24, 2026
ac25aed
avcodec/eatgq: Fix shadowing
mkver Feb 24, 2026
3343567
avcodec/motion_est: Fix shadowing
mkver Feb 24, 2026
6721754
avcodec/get_bits: Rename macro variables to avoid shadowing
mkver Feb 24, 2026
7e70503
avcodec/vp5: Fix shadowing
mkver Feb 24, 2026
0afa879
avcodec/aac/aacdec_usac: Fix shadowing
mkver Feb 24, 2026
63e0a2a
avcodec/nvenc: change default H.264 profile from main to high
Fekils Feb 27, 2026
215e22d
ffv1enc_vulkan: fix typo
cyanreg Mar 10, 2026
a9984fe
avcodec/lcevc_parser: check return value of init_get_bits8()
jamrial Mar 10, 2026
271bacf
tests/swscale: exclude init time from benchmark
haasn Feb 18, 2026
2589ce4
tests/swscale: unref buffers before each iteration
haasn Feb 22, 2026
955cf56
swscale/tests/swscale: always allocate frame in scale_legacy()
ramiropolla Mar 6, 2026
953efc9
swscale/tests/swscale: remove hardcoded dimension checks
ramiropolla Mar 5, 2026
f83c971
swscale/tests/swscale: split parse_options() out of main()
ramiropolla Feb 27, 2026
e34071e
swscale/tests/swscale: split init_ref() out of main()
ramiropolla Feb 27, 2026
49b1e21
swscale/tests/swscale: pass opts and mode arguments as const pointers
ramiropolla Dec 23, 2025
d935000
swscale/tests/swscale: give names to SwsContext variables
ramiropolla Dec 23, 2025
a09cddc
swscale/tests/swscale: make auxiliary conversions bitexact and accura…
ramiropolla Mar 2, 2026
5c5444d
swscale/tests/swscale: avoid redundant ref->src conversions
ramiropolla Mar 3, 2026
e3ee346
swscale/tests/swscale: add -s option to set frame size
ramiropolla Mar 6, 2026
910000f
avfilter/vf_vpp_amf: Extend AMF Color Converter HDR capabilities
Mar 11, 2026
fb088f2
avfilter/vf_vpp_amf: fix build on non-windows
BtbN Mar 11, 2026
b19bd0d
avutil/cpu: add aarch64 CPU feature flag for PMULL and EOR3
tantei3 Feb 5, 2026
952e588
avutil/crc: refactor helper functions to separate header file
tantei3 Feb 5, 2026
5085432
avutil/crc: add aarch64 NEON PMULL+EOR3 SIMD implementation for av_crc
tantei3 Feb 5, 2026
b028dac
configure: bump AMF requirement to 1.5.0
kasper93 Jan 20, 2026
7c79c79
aacdec_usac_mps212: reject reserved freq_res value
cyanreg Mar 10, 2026
5074d9f
hwcontext_amf: fix version variable type and remove cast
kasper93 Mar 11, 2026
ba0f808
avformat/aiffdec: Check for partial read
michaelni Mar 7, 2026
9dc44b4
fftools/ffplay.c: Also print demuxer-level metadata updates.
toots Mar 8, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
238 changes: 238 additions & 0 deletions .forgejo/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,238 @@
# This file describes the expected reviewers for a PR based on the changed
# files. Unlike what the name of the file suggests they don't own the code, but
# merely have a good understanding of that area of the codebase and therefore
# are usually suited as a reviewer.

# Lines in this file match changed paths via Go-Style regular expressions:
# https://pkg.go.dev/regexp/syntax

# Mind the alphabetical order

# avcodec
# =======
libavcodec/.*aac.* @lynne
libavcodec/.*ac3.* @lynne
libavcodec/.*adpcm.* @zane @pross
libavcodec/anm.* @pross
libavcodec/amf.* @OvchinnikovDmitrii @ArazIusubov
libavcodec/ansi.* @pross
libavcodec/aom_film_grain.* @haasn
libavcodec/.*atrac9.* @lynne
libavcodec/bink.* @pross
libavcodec/bintext.* @pross
libavcodec/.*bitpacked.* @lynne
libavcodec/.*d3d12va.* @jianhuaw @tong1wu @younengxiao
libavcodec/.*dirac.* @lynne
libavcodec/.*dovi_rpu.* @haasn
libavcodec/dpx.* @pross
libavcodec/dsd.* @pross
libavcodec/eacmv.* @pross
libavcodec/eaidct.* @pross
libavcodec/eamad.* @pross
libavcodec/eat.* @pross
libavcodec/.*exif.* @Traneptora
libavcodec/.*ffv1.* @lynne @michaelni
libavcodec/g728.* @pross
libavcodec/gem.* @pross
libavcodec/golomb.* @michaelni
libavcodec/.*h266.* @frankplow @NuoMi @jianhuaw
libavcodec/h26x/.* @frankplow @NuoMi @jianhuaw
libavcodec/.*h274.* @haasn
libavcodec/iff.* @pross
libavcodec/.*jpegxl.* @lynne @Traneptora
libavcodec/jpeg2000htdec.* @cae
libavcodec/jv.* @pross
libavcodec/.*jxl.* @lynne @Traneptora
libavcodec/.*lcms2.* @haasn
libavcodec/lead.* @pross
libavcodec/mediacodec* @quink
libavcodec/mjpeg* @michaelni
libavcodec/mmvideo.* @pross
libavcodec/msp2.* @pross
libavcodec/mvc.* @pross
libavcodec/oh* @quink
libavcodec/.*opus.* @lynne
libavcodec/pictor.* @pross
libavcodec/.*png.* @Traneptora
libavcodec/.*prores.* @lynne
libavcodec/rangecoder.* @michaelni
libavcodec/ratecontrol.* @michaelni
libavcodec/rv60.* @pross
libavcodec/sgirle.* @pross
libavcodec/.*siren.* @lynne
libavcodec/smpte_436m.* @programmerjake
libavcodec/svq1.* @pross
libavcodec/svq3.* @pross
libavcodec/.*vc2.* @lynne
libavcodec/videotoolbox.* @ePirat
libavcodec/vp3.* @pross
libavcodec/vp4.* @pross
libavcodec/vp5.* @pross
libavcodec/vp6.* @pross
libavcodec/vp8.* @rbultje @pross
libavcodec/vp9.* @rbultje
libavcodec/vpx.* @rbultje @pross
libavcodec/vqc.* @pross
libavcodec/.*vvc.* @frankplow @NuoMi @jianhuaw
libavcodec/wmavoice.* @rbultje
libavcodec/wbmp.* @pross

# bitstream filters
libavcodec/bsf/eia608_to_smpte436m.* @programmerjake
libavcodec/bsf/smpte436m_to_eia608.* @programmerjake

# architecture-specific
libavcodec/aarch64/.* @lynne @mstorsjo
libavcodec/arm/.* @mstorsjo
libavcodec/ppc/.* @sean_mcg
libavcodec/riscv/.* @Courmisch
libavcodec/wasm/hevc/.* @quink
libavcodec/x86/.* @lynne
libavcodec/x86/vp8.* @rbultje
libavcodec/x86/vp9.* @rbultje
libavcodec/x86/vpx.* @rbultje

# avfilter
# =======
libavfilter/af_loudnorm.* @kylophone
libavfilter/af_whisper.* @vpalmisano
libavfilter/.*_amf* @OvchinnikovDmitrii @ArazIusubov
libavfilter/avfiltergraph.* @haasn
libavfilter/colorspace.* @rbultje
libavfilter/formats.* @haasn
libavfilter/.*f_ebur128.* @haasn
libavfilter/vf_blackdetect.* @haasn
libavfilter/vf_colordetect.* @haasn
libavfilter/vf_colorspace.* @rbultje
libavfilter/.*drawvg.* @ayosec
libavfilter/vf_find_rect.* @michaelni
libavfilter/vf_icc.* @haasn
libavfilter/vf_libplacebo.* @haasn
libavfilter/vf_libvmaf.* @kylophone
libavfilter/vf_premultiply.* @haasn
libavfilter/vf_scale.* @haasn
libavfilter/vf_scale_vt.* @quink
libavfilter/vf_thumbnail.* @haasn
libavfilter/vf_transpose_vt.* @quink
libavfilter/vf_yadif.* @michaelni
libavfilter/vsrc_mandelbrot.* @michaelni

libavfilter/aarch64/.* @mstorsjo
libavfilter/riscv/.* @Courmisch
libavfilter/x86/colorspace.* @rbultje
libavfilter/x86/scene_sad.* @haasn

# avformat
# =======
libavformat/alp.* @zane
libavformat/amv.* @zane
libavformat/anm.* @pross
libavformat/apm.* @zane
libavformat/argo_.* @zane
libavformat/bink.* @pross
libavformat/bintext.* @pross
libavformat/caf.* @pross
libavformat/cine.* @pross
libavformat/dsf.* @pross
libavformat/eacdata.* @pross
libavformat/electronicarts.* @pross
libavformat/.*exif.* @Traneptora
libavformat/filmstrip.* @pross
libavformat/frm.* @pross
libavformat/iamf.* @jamrial
libavformat/icecast.c @ePirat
libavformat/ico.* @pross
libavformat/iff.* @pross
libavformat/.*jpegxl.* @Traneptora
libavformat/jv.* @pross
libavformat/.*jxl.* @Traneptora
libavformat/kvag.* @zane
libavformat/mccdec.* @programmerjake
libavformat/mccenc.* @programmerjake
libavformat/mlv.* @pross
libavformat/mm.* @pross
libavformat/msp.* @pross
libavformat/mv.* @pross
libavformat/pp_bnk.* @zane
libavformat/rm.* @pross
libavformat/sauce.* @pross
libavformat/scd.* @zane
libavformat/tty.* @pross
libavformat/whip.c @JackLau
libavformat/wsd.* @pross
libavformat/wtv.* @pross

# avutil
# ======
libavutil/.*_amf* @OvchinnikovDmitrii @ArazIusubov
libavutil/.*crc.* @lynne @michaelni
libavutil/.*d3d12va.* @jianhuaw @tong1wu @younengxiao
libavutil/csp.* @rbultje @haasn
libavutil/eval.* @michaelni
libavutil/film_grain.* @haasn
libavutil/dovi_meta.* @haasn
libavutil/hwcontext_oh.* @quink
libavutil/hwcontext_mediacodec.* @quink
libavutil/hwcontext_videotoolbox.* @ePirat
libavutil/iamf.* @jamrial
libavutil/integer.* @michaelni
libavutil/lfg.* @michaelni
libavutil/lls.* @michaelni
libavutil/md5.* @michaelni
libavutil/mathematics.* @michaelni
libavutil/mem.* @michaelni
libavutil/qsort.* @michaelni
libavutil/random_seed.* @michaelni
libavutil/rational.* @michaelni
libavutil/sfc.* @michaelni
libavutil/softfloat.* @michaelni
libavutil/tree.* @michaelni
libavutil/tx.* @lynne

libavutil/aarch64/.* @lynne @mstorsjo
libavutil/arm/.* @mstorsjo
libavutil/ppc/.* @sean_mcg
libavutil/riscv/.* @Courmisch
libavutil/x86/.* @lynne

# swresample
# =======
libswresample/aarch64/.* @mstorsjo
libswresample/arm/.* @mstorsjo
libswresample/.* @michaelni

# swscale
# =======
libswscale/aarch64/.* @mstorsjo
libswscale/arm/.* @mstorsjo
libswscale/ppc/.* @sean_mcg
libswscale/riscv/.* @Courmisch
libswscale/.* @haasn

# tools
# =====
fftools/ffplay_renderer.* @haasn
tools/target_dec_fuzzer.c @michaelni

# doc
# ===
doc/.* @GyanD

# Frameworks
# ==========
.*d3d12va.* @jianhuaw @tong1wu @younengxiao
.*vulkan.* @lynne @haasn

# tests
# =====
tests/checkasm/riscv/.* @Courmisch
tests/ref/.*drawvg.* @ayosec
tests/ref/fate/sub-mcc.* @programmerjake

# Forgejo
# =======
.forgejo/CODEOWNERS @michaelni

# /
# =
MAINTAINERS @michaelni
9 changes: 9 additions & 0 deletions .forgejo/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Summary of the bug

Briefly describe the issue you're experiencing. Include any error messages, unexpected behavior, or relevant observations.

# Steps to reproduce

List the steps required to trigger the bug.
Include the exact CLI command used, if any.
Provide sample input files, logs, or scripts if available.
74 changes: 74 additions & 0 deletions .forgejo/labeler/labeler.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
module.exports = async ({github, context}) => {
const title = (context.payload.pull_request?.title || context.payload.issue?.title || '').toLowerCase();
const labels = [];
const issueNumber = context.payload.pull_request?.number || context.payload.issue?.number;

const kwmap = {
'avcodec': 'avcodec',
'avdevice': 'avdevice',
'avfilter': 'avfilter',
'avformat': 'avformat',
'avutil': 'avutil',
'swresample': 'swresample',
'swscale': 'swscale',
'fftools': 'CLI',
'vulkan': 'vulkan'
};

async function isOrgMember(username) {
try {
const response = await github.rest.orgs.checkMembershipForUser({
org: context.repo.owner,
username: username
});
return response.status === 204;
} catch (error) {
return false;
}
}

if (context.payload.action === 'closed' ||
(context.payload.action !== 'opened' && (
context.payload.action === 'assigned' ||
context.payload.action === 'label_updated' ||
context.payload.action === 'labeled' ||
context.payload.comment) &&
await isOrgMember(context.payload.sender.login))
) {
try {
await github.rest.issues.removeLabel({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: issueNumber,
// this should say 'new', but forgejo deviates from GitHub API here and expects the ID
name: '41'
});
console.log('Removed "new" label');
} catch (error) {
if (error.status !== 404 && error.status !== 410) {
console.log('Could not remove "new" label');
}
}
} else if (context.payload.action === 'opened') {
labels.push('new');
console.log('Detected label: new');
}

if ((context.payload.action === 'opened' || context.payload.action === 'edited') && context.eventName !== 'issue_comment') {
for (const [kw, label] of Object.entries(kwmap)) {
if (title.includes(kw)) {
labels.push(label);
console.log('Detected label: ' + label);
}
}
}

if (labels.length > 0) {
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: issueNumber,
labels: labels,
});
}
}
35 changes: 35 additions & 0 deletions .forgejo/labeler/labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
avcodec:
- changed-files:
- any-glob-to-any-file: 'libavcodec/**'

avdevice:
- changed-files:
- any-glob-to-any-file: 'libavdevice/**'

avfilter:
- changed-files:
- any-glob-to-any-file: 'libavfilter/**'

avformat:
- changed-files:
- any-glob-to-any-file: 'libavformat/**'

avutil:
- changed-files:
- any-glob-to-any-file: 'libavutil/**'

swresample:
- changed-files:
- any-glob-to-any-file: 'libswresample/**'

swscale:
- changed-files:
- any-glob-to-any-file: 'libswscale/**'

CLI:
- changed-files:
- any-glob-to-any-file: 'fftools/**'

vulkan:
- changed-files:
- any-glob-to-any-file: '**/*vulkan*'
36 changes: 36 additions & 0 deletions .forgejo/pre-commit/config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
exclude: ^tests/ref/

repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: check-case-conflict
- id: check-executables-have-shebangs
- id: check-illegal-windows-names
- id: check-shebang-scripts-are-executable
- id: check-yaml
- id: end-of-file-fixer
- id: file-contents-sorter
files:
.forgejo/pre-commit/ignored-words.txt
args:
- --ignore-case
- id: fix-byte-order-marker
- id: mixed-line-ending
- id: trailing-whitespace
- repo: local
hooks:
- id: aarch64-asm-indent
name: fix aarch64 assembly indentation
files: ^.*/aarch64/.*\.S$
language: script
entry: ./tools/check_arm_indent.sh --apply
pass_filenames: false
- repo: https://github.com/codespell-project/codespell
rev: v2.4.1
hooks:
- id: codespell
args:
- --ignore-words=.forgejo/pre-commit/ignored-words.txt
- --ignore-multiline-regex=codespell:off.*?(codespell:on|\Z)
exclude: ^tools/(patcheck|clean-diff)$
Loading