README.md

September 3, 2025 ยท View on GitHub

It's a tool to build ffmpeg for almost all platforms.

How: https://github.com/wang-bin/avbuild/wiki

Download prebuilt packages

Totoal Downloads

Lite build of FFmpeg master branch (recommended):

Android, Apple, Linux, VS2022 Desktop, VS2022 UWP, Clang Windows Desktop

FFmpeg releases and others: https://sourceforge.net/projects/avbuild/files

Build Details:

Linux, android, macOS, iOS, raspberry pi(legacy OSes), windows build:Build status github Build Status, CircleCI

Features

  • Support single FFmpeg shared library: ffmpeg.dll, libffmpeg.so, libffmpeg.dylib, FFmpeg.xcframework
  • modern toolchain support: clang+lld, cross build for almost all platforms on any host OS
  • multiple targets build and configure simultaneously
  • ssl
  • enable all gpu decoders and encoders if possible
  • nvidia driver version is not limited(nvcuvid, nvdec, nvenc), supports 8.0~13.0 in 1 binary
  • ffmpeg patches
  • Universal binaries for apple platforms, including apple sillicon support

Build Matrix

CC/H?X/OSLinuxAndroidmacOSiOSRPiWin32WinStoreWinPhone
ClangHCA+HA+CH+C
Clang+LLDHC?A+H+CA+H+C.
MINGW or VCRT120+
A+H+CA+C
GCCHCHH+CH+C
VS2013/15HHC
VS2017+HH
  • A: Apple clang
  • H: host build. Clang is open source clang
  • C: cross build (for example, build win32 from linux/macOS using mingw, build rpi from windows/linux/macOS using gcc and clang)
  • ?: in plan
  • Empty: won't support

Fork and Custom Build by Github Actions

You can request to add your configuration. If not accepted, customize yourself and build by github actions

  • Fork the repo
  • Set actions variables used by workflows in github repo settings
    • FF_VER: master, or version, e.g. 8.0, 6.1
    • LINUX_SYSROOT_ID: any characters, used to update sysroot cache
    • LLVM_VER: llvm version, e.g. 22, used by linux and windows build. Available versions can be found in https://apt.llvm.org
    • VCVER: msvcrt version, e.g. 14.28.29333. used by windows clang build
    • WINSDKVER: windows sdk version, e.g. 10.0.22621.0. used by windows clang build
    • VC_LTL_VER: VC-LTL5 version, e.g. 5.1.1. used by windows build with LTL
  • Edit workflow files(build.yml, build_gpl.yml). Remove unused jobs, e.g. sourceforge upload
  • Download ffmpeg binaries from workflow artifacts

When linking static libs to your program, all dependencies must be specified in your linker flags. The dependencies can be found in https://sourceforge.net/projects/avbuild/files/dep/dep.7z/download

TODO

  • Azure pipeline/github action: vs2022+WSL