@@ -23,11 +23,39 @@ jobs:
2323 - name : Checkout code changes
2424 uses : actions/checkout@v6
2525
26- - name : Setup FFmpeg
27- uses : FedericoCarboni/setup-ffmpeg@v3
28- with :
29- # bump: ffmpeg-ci /ffmpeg-version: '([\d.]+)'/ docker:mwader/static-ffmpeg|~7.0
30- ffmpeg-version : ' 7.0.2'
26+ - name : Install FFmpeg
27+ shell : bash
28+ run : |
29+ set -euo pipefail
30+ # bump: ffmpeg-ci /ffmpeg-version: '([\d.]+)'/ docker:mwader/static-ffmpeg|~8.0
31+ FF_VERSION="8.0.1"
32+ INSTALL_DIR="$HOME/ffmpeg"
33+ mkdir -p "$INSTALL_DIR"
34+
35+ if [[ "${{ runner.os }}" == "Linux" ]]; then
36+ docker pull mwader/static-ffmpeg:$FF_VERSION
37+ CID=$(docker create mwader/static-ffmpeg:$FF_VERSION)
38+ docker cp "$CID:/ffmpeg" "$INSTALL_DIR/ffmpeg"
39+ docker cp "$CID:/ffprobe" "$INSTALL_DIR/ffprobe"
40+ docker rm "$CID"
41+ chmod +x "$INSTALL_DIR/"*
42+
43+ elif [[ "${{ runner.os }}" == "macOS" ]]; then
44+ curl -L https://evermeet.cx/ffmpeg/ffmpeg-$FF_VERSION.zip -o ffmpeg.zip
45+ unzip ffmpeg.zip
46+ mv ffmpeg "$INSTALL_DIR/ffmpeg"
47+ curl -L https://evermeet.cx/ffmpeg/ffprobe-$FF_VERSION.zip -o ffprobe.zip
48+ unzip ffprobe.zip
49+ mv ffprobe "$INSTALL_DIR/ffprobe"
50+ chmod +x "$INSTALL_DIR/"*
51+
52+ elif [[ "${{ runner.os }}" == "Windows" ]]; then
53+ curl -L https://www.gyan.dev/ffmpeg/builds/packages/ffmpeg-$FF_VERSION-essentials_build.zip -o ffmpeg.zip
54+ unzip ffmpeg.zip
55+ mv ffmpeg-*/bin/* "$INSTALL_DIR/"
56+ fi
57+
58+ echo "$INSTALL_DIR" >> "$GITHUB_PATH"
3159
3260 - name : Setup Java
3361 uses : actions/setup-java@v5
0 commit comments