Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wang-bin/avbuild
ffmpeg花式编译. build tool for all platforms: iOS, android, raspberry pi, win32, uwp, linux, macOS etc.
https://github.com/wang-bin/avbuild
android apple-sillicon bitcode clang ffmpeg ios libav libffmpeg linux maccatalyst macos mingw msvc raspberry-pi uwp vs2019 windows-phone windows-xp
Last synced: 2 days ago
JSON representation
ffmpeg花式编译. build tool for all platforms: iOS, android, raspberry pi, win32, uwp, linux, macOS etc.
- Host: GitHub
- URL: https://github.com/wang-bin/avbuild
- Owner: wang-bin
- License: lgpl-3.0
- Created: 2015-06-17T05:48:04.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2024-11-07T15:38:09.000Z (6 days ago)
- Last Synced: 2024-11-07T16:23:15.562Z (6 days ago)
- Topics: android, apple-sillicon, bitcode, clang, ffmpeg, ios, libav, libffmpeg, linux, maccatalyst, macos, mingw, msvc, raspberry-pi, uwp, vs2019, windows-phone, windows-xp
- Language: Shell
- Homepage: https://sourceforge.net/projects/avbuild/files
- Size: 973 KB
- Stars: 569
- Watchers: 40
- Forks: 111
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
It's a tool to build ffmpeg for almost all platforms.
How: https://github.com/wang-bin/avbuild/wiki
### Download prebuilt packages
[![Totoal Downloads](https://img.shields.io/sourceforge/dt/avbuild)](https://sourceforge.net/projects/avbuild/files)
Lite build of FFmpeg master branch **(recommended)**:
[Android](https://sourceforge.net/projects/avbuild/files/android/ffmpeg-master-android-lite.tar.xz/download), [Apple](https://sourceforge.net/projects/avbuild/files/xcframework/FFmpeg.xcframework-master-lite.tar.xz/download), [Linux](https://sourceforge.net/projects/avbuild/files/linux/ffmpeg-master-linux-clang-lite.tar.xz/download), [VS2022 Desktop](https://sourceforge.net/projects/avbuild/files/windows-desktop/ffmpeg-master-windows-desktop-vs2022-lite.7z/download), [VS2022 UWP](https://sourceforge.net/projects/avbuild/files/uwp/ffmpeg-master-uwp-vs2022-lite.7z/download), [Clang Windows Desktop](https://sourceforge.net/projects/avbuild/files/windows-desktop/ffmpeg-master-windows-desktop-clang-lite.tar.xz/download)
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](https://github.com/wang-bin/avbuild/workflows/Build/badge.svg)](https://github.com/wang-bin/avbuild/actions)** [![Build Status](https://dev.azure.com/kb137035/github/_apis/build/status/wang-bin.avbuild?branchName=master)](https://dev.azure.com/kb137035/github/_build/latest?definitionId=5&branchName=master), [CircleCI](https://circleci.com/gh/wang-bin/avbuild)
## Features
- [Support single FFmpeg shared library](tools/mklibffmpeg.sh): ffmpeg.dll, libffmpeg.so, libffmpeg.dylib, [FFmpeg.xcframework](https://sourceforge.net/projects/avbuild/files/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](https://sourceforge.net/projects/avbuild/files/dep/msvcrt-dev.7z/download) version, e.g. `14.28.29333`. used by windows clang build
- WINSDKVER: [windows sdk](https://sourceforge.net/projects/avbuild/files/dep/winsdk.7z/download) 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