FFmpeg builds for Windows (x86_64 and arm64) and Linux (x86_64, aarch64, and RISC-V64).
Windows builds are targetting Windows 7 and newer, provided UCRT is installed. The minimum supported version is Windows 10 22H2, no guarantees on anything older.
Linux x86_64 and aarch64 builds are targetting RHEL/CentOS 8 (glibc-2.28 + linux-4.18) and anything more recent. RISC-V64 builds target rv64gc/lp64d and require glibc 2.36 and Linux 6.1.189 or newer.
Builds run daily at 10:00 UTC (or GitHubs idea of that time) and are automatically released on success.
Auto-Builds run for win64, winarm64, linux64, linuxarm64, and linuxriscv64. There are no win32/x86 auto-builds, though you can produce win32 builds yourself following the instructions below.
Releases include FFmpeg master, 9.0, 8.1, and 4.4 in all six GPL, LGPL, and nonfree variants listed below.
Upstream changes are proposed through review PRs; see upstream synchronization for setup and review instructions.
- The last build of each month is kept for two years.
- The last 14 daily builds are kept.
- The special "latest" build floats and provides consistent URLs always pointing to the latest build.
For a list of included dependencies check the scripts.d directory. Every file corresponds to its respective package.
- bash
- docker
./makeimage.sh target variant [addin [addin] [addin] ...]
./build.sh target variant [addin [addin] [addin] ...]
On success, the resulting zip file will be in the artifacts subdir.
Available targets:
win64(x86_64 Windows)win32(x86 Windows)linux64(x86_64 Linux, glibc>=2.28, linux>=4.18)linuxarm64(arm64 (aarch64) Linux, glibc>=2.28, linux>=4.18)linuxriscv64(RISC-V64 Linux, rv64gc/lp64d, glibc>=2.36, linux>=6.1.189)
The linuxarm64 target will not build some dependencies due to lack of arm64 (aarch64) architecture support or cross-compiling restrictions.
davs2andxavs2: aarch64 support is broken.libmfxandlibva: Library for Intel QSV, so there is no aarch64 support.
Available variants:
gplIncludes all dependencies, even those that require full GPL instead of just LGPL.lgplLacking libraries that are GPL-only. Most prominently libx264 and libx265.nonfreeIncludes fdk-aac in addition to all the dependencies of the gpl variant.gpl-sharedSame as gpl, but comes with the libav* family of shared libs instead of pure static executables.lgpl-sharedSame again, but with the lgpl set of dependencies.nonfree-sharedSame again, but with the nonfree set of dependencies.
All of those can be optionally combined with any combination of addins:
4.4/5.0/5.1/6.0/6.1/7.0/7.1/8.0/8.1/9.0to build from the respective release branch instead of master.debugto not strip debug symbols from the binaries. This increases the output size by about 250MB.ltobuild all dependencies and ffmpeg with -flto=auto (HIGHLY EXPERIMENTAL, broken for Windows, sometimes works for Linux)