Prebuilt, self-contained FFmpeg libraries and programs for every major platform: FFmpeg 8.x and 9.x, each in four
license variants, with the whisper.cpp speech-to-text filter (whisper)
built in. Download them from the releases.
They are built from ffmpeg-build.yml by ffmpeg-build:
every library version is locked in ffmpeg.lock, every license is checked before anything builds, and
each archive carries its license notices. Using the builds covers each platform.
New releases also publish a ffmpeg-<version>-<target>.spdx.json SBOM beside each target's archives, covered by
SHA256SUMS. These SPDX 2.3 inventories record build inputs and exact archive hashes; iOS bundles have a combined inventory.
| OS | RIDs |
|---|---|
| Windows | win-x64, win-arm64 |
| Linux (glibc) | linux-x64, linux-arm64, linux-armhf |
| Linux (musl / Alpine) | linux-musl-x64, linux-musl-arm64 |
| macOS | osx-x64, osx-arm64 |
| Android | android-arm64, android-x64 |
| iOS and Mac Catalyst | ios-arm64, ios-sim-arm64, maccatalyst-arm64 + maccatalyst-x64, in one .xcframework bundle |
Every platform ships shared libraries (.dll, .so, .dylib; iOS as dynamic frameworks). The Linux builds are
self-contained: nothing to install to run them.
Each platform is built four times. Pick by family and version:
- Family:
gpladds the x264 and x265 encoders;lgpluses kvazaar for HEVC and leaves x264/x265 out, so linking it doesn't put your app under the GPL. - Version:
v3(GPLv3 / LGPLv3) may use the Apache-2.0 libraries: OpenSSL, the Vulkan loader, and MoltenVK on Apple.v2(GPLv2 / LGPLv2.1) can't.lgplv2is the App Store variant: v3's anti-tivoization terms don't fit the App Store.
| Variant | TLS (Linux, Android, Mac Catalyst) | SRT/RIST encryption | Vulkan filters | Whisper on the GPU (Vulkan) |
|---|---|---|---|---|
gplv3 |
OpenSSL | yes | yes | Linux, Windows, Android |
lgplv3 |
OpenSSL | yes | yes | Linux, Windows, Android |
gplv2 |
GnuTLS | yes | no | Windows, Android |
lgplv2 |
none | no | no | Windows, Android |
Windows always uses SChannel and macOS/iOS SecureTransport for TLS. Whisper uses Metal on every Apple build, and the
CPU on linux-armhf (and wherever no GPU is found). On v2 Windows and Android builds, Whisper's GPU path uses the
system's own Vulkan library, so nothing Apache-2.0 is shipped.
Releases are tagged <FFmpeg version>.<build>, e.g. 9.0.2.4; the build number goes up whenever anything a release
is made of changes (a library version, the build definition, the engine). Each release has, per platform and
variant:
ffmpeg-<version>-<rid>-<variant>.tar.gz: the programs and shared libraries, withTHIRD-PARTY-NOTICES.txt(the variant's license, how FFmpeg was built, and every bundled library's license texts).ffmpeg-<version>-<rid>-<variant>-dev.tar.gz(desktop platforms): headers, pkg-config files and, on Windows, MSVC import libraries.ffmpeg-<version>-ios-<variant>.tar.gz: the iOS and Mac Catalyst.xcframeworkbundle.
plus SHA256SUMS, manifest.yml (what each build contains) and ffmpeg-<version>-sources.tar.gz (the source of
every library in the release).
The build definition in this repository is MIT (LICENSE). FFmpeg and the libraries are under the GNU (L)GPL
and various permissive licenses; each archive's THIRD-PARTY-NOTICES.txt says which, in full.