Skip to content

ffmpeg花式编译. build tool for all platforms: iOS, android, raspberry pi, win32, uwp, linux, macOS etc.

License

Notifications You must be signed in to change notification settings

wang-bin/avbuild

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Feb 24, 2025
7438820 · Feb 24, 2025
Dec 3, 2023
Jan 28, 2025
Feb 24, 2025
Feb 24, 2025
Jul 2, 2022
Jun 8, 2023
Jun 17, 2015
Sep 28, 2024
Sep 2, 2019
Jan 28, 2025
Apr 3, 2022
Nov 30, 2024
Dec 11, 2021
Sep 18, 2020
Nov 30, 2024
Aug 29, 2022

Repository files navigation

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)
  • ffmpeg patches
  • Universal binaries for apple platforms, including apple sillicon support

Build Matrix

CC/H?X/OS Linux Android macOS iOS RPi Win32 WinStore WinPhone
Clang H C A+H A+C H+C
Clang+LLD H C ? A+H+C A+H+C.
MINGW or VCRT120+
A+H+C A+C
GCC H C H H+C H+C
VS2013/15 H H C
VS2017+ H H
  • 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. 7.0, 6.1
    • LINUX_SYSROOT_ID: any characters, used to update sysroot cache
    • LLVM_VER: llvm version, e.g. 20, 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

TODO

  • Azure pipeline/github action: vs2022+WSL