Enable more encoders/muxers and aresample filter #32
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build static ffmpeg | |
on: | |
push: | |
pull_request: | |
jobs: | |
package-linux: | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
arch: | |
- x86_64 | |
#- arm64 # disabled for now because it doesn't work because an arm64 build of libopus is not installed | |
env: | |
ARCH: ${{ matrix.arch }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: | | |
sudo apt-get update -y && \ | |
sudo apt-get install -y libopus-dev yasm | |
- name: Install ARM64 compiler | |
if: env.ARCH == 'arm64' | |
run: | | |
sudo apt-get update -y && \ | |
sudo apt-get install -y gcc-aarch64-linux-gnu | |
- name: Build | |
run: ./build-linux.sh | |
- name: Archive production artifacts | |
uses: actions/upload-artifact@v1 | |
with: | |
name: ffmpeg-linux-${{ env.ARCH }} | |
path: artifacts/ | |
package-windows: | |
if: false # disabled for now because it doesn't work because a Windows build of libopus is not installed | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
arch: | |
- x86_64 | |
env: | |
ARCH: ${{ matrix.arch }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: | | |
sudo apt-get update -y && \ | |
sudo apt-get install -y libopus-dev yasm mingw-w64 | |
- name: Build | |
run: ./build-windows.sh | |
- name: Archive production artifacts | |
uses: actions/upload-artifact@v1 | |
with: | |
name: ffmpeg-windows-${{ env.ARCH }} | |
path: artifacts/ | |
package-macos: | |
if: false # disabled for now because it doesn't work because a macOS build of libopus is not installed | |
runs-on: macos-latest | |
strategy: | |
matrix: | |
# https://developer.apple.com/documentation/apple-silicon/building-a-universal-macos-binary#Update-the-Architecture-List-of-Custom-Makefiles | |
target: | |
- x86_64-apple-macos10.9 | |
- arm64-apple-macos11 | |
env: | |
TARGET: ${{ matrix.target }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: brew install yasm | |
- name: Build | |
run: ./build-macos.sh | |
- name: Archive artifacts | |
uses: actions/upload-artifact@v1 | |
with: | |
name: ffmpeg-${{ matrix.target }} | |
path: artifacts/ | |
release: | |
runs-on: ubuntu-latest | |
needs: | |
- package-linux | |
#- package-windows # disabled for now | |
#- package-macos # disabled for now | |
steps: | |
- uses: actions/download-artifact@v2 | |
with: | |
path: artifacts/ | |
- name: Make tarballs | |
run: | | |
mkdir artifacts/release/ | |
cd artifacts/ | |
for dir in ffmpeg-*/ffmpeg-* | |
do | |
name=$(basename $dir) | |
tar czf release/$name.tar.gz -C $(dirname $dir) $name | |
done | |
ls -l release/ | |
- name: Release | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/v') | |
with: | |
files: artifacts/release/* | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |