github 工作流自动编译 ffmpeg for windows on arm

github 工作流自动编译 ffmpeg for windows on arm

利用:IsaacShelton/update-existing-release
https://github.com/IsaacShelton/update-existing-release

参考:https://github.com/dvhh/ffmpeg-wos-arm64-build

这个是我修改的仓库,需要的朋友自取:
https://github.com/wmx-github/ffmpeg-wos-arm64-build

使用:

1 先创建一个release 和tag

我这里release是 v6.1 tag是v6.1

2 把库文件都打包在一起

修改:

yaml 复制代码
name: Build

on:
  push:
  workflow_dispatch:
  schedule:
    - cron: 0 0 * * 1

jobs:
  build:
    # The type of runner that the job will run on
    runs-on: ubuntu-latest
    container:
      image: mstorsjo/llvm-mingw:20230614
    steps:
      - uses: actions/checkout@v3
        with:
          repository: libsdl-org/SDL
          path: sdl
          ref: SDL2
      - name: build-sdl
        run: |
          echo ${{ github.workspace }}
          mkdir -p ${{ github.workspace }}/local
          mkdir build
          cd build
          ../sdl/configure --host=aarch64-w64-mingw32 --prefix=${{ github.workspace }}/local
          make -j16
          make install
      - name: build x264
        run: |
          git clone --depth=1 https://code.videolan.org/videolan/x264.git x264
          cd x264
          export PKG_CONFIG_LIBDIR=${{ github.workspace }}/local/lib/pkgconfig
          ./configure --host=aarch64-w64-mingw32 --prefix=${{ github.workspace }}/local --enable-pic --extra-cflags="-mfpu=neon" --cross-prefix=aarch64-w64-mingw32- --enable-shared --enable-static
          make -j16
          make install
      - uses: actions/checkout@v3 
      - uses: actions/checkout@v3 
        with:
          repository: FFmpeg/FFmpeg
          path: ffmpeg
          ref: release/6.1
      - name: build ffmpeg
        run: |
          # /opt/llvm-mingw/aarch64-w64-mingw32/
          # ln -s ${{ github.workspace }}/local/bin/sdl2-config ${{ github.workspace }}/local/bin/aarch64-w64-mingw32-sdl2-config
          # chmod +x ${{ github.workspace }}/local/bin/sdl2-config ${{ github.workspace }}/local/bin/aarch64-w64-mingw32-sdl2-config
          # export PATH=$PATH:${{ github.workspace }}/local/bin

          # do not work check : https://trac.ffmpeg.org/wiki/HWAccelIntro#DXVA2
          # might need more than that
          # curl https://download.videolan.org/pub/contrib/dxva2api.h -o /opt/llvm-mingw/aarch64-w64-mingw32/include/dxva2api.h
          
          cd ffmpeg
          export PKG_CONFIG_LIBDIR=${{ github.workspace }}/local/lib/pkgconfig
          ./configure --pkg-config=/usr/bin/x86_64-pc-linux-gnu-pkg-config --pkgconfigdir=${{ github.workspace }}/local/lib/pkgconfig --cross-prefix=aarch64-w64-mingw32- --arch=arm64 --target-os=mingw32 --enable-sdl --disable-doc --prefix=${{ github.workspace }}/local --disable-static --enable-shared --enable-libx264 --enable-gpl --enable-nonfree
          
          make -j16
          make install
      - name: archive
        run: |
          mkdir output
          readlink -f output
          cp -r ${{ github.workspace }}/local  output
          # tar cfz all.tar.gz ${{ github.workspace }}/local/bin
          cd output
          zip -r -D ../ffmpeg-wos-arm64.zip .
      - name: Update existing release
        uses: IsaacShelton/update-existing-release@v1.3.4
        with:
          token: ${{secrets.GITHUB_TOKEN}}
          release: "v6.1"
          tag: "v6.1"
          replace: true
          files: >
            ffmpeg-wos-arm64.zip
相关推荐
十步杀一人_千里不留行3 小时前
Git提交前ESLint校验实践(Husky + lint-staged)
git·github
朱昆鹏3 小时前
开源 Claude Code + Codex + 面板 的未来vibecoding平台
前端·后端·github
yuuki2332334 小时前
【C++】继承
开发语言·c++·windows
非凡ghost4 小时前
PowerDirector安卓版(威力导演安卓版)
android·windows·学习·软件需求
猫头虎5 小时前
OpenClaw-VSCode:在 VS Code 里玩转 OpenClaw,远程管理+SSH 双剑合璧
ide·vscode·开源·ssh·github·aigc·ai编程
疯狂敲代码的老刘6 小时前
JDK 1.6到25 全版本网盘合集 (Windows + Mac + Linux)
java·linux·windows·macos·jdk
你听得到116 小时前
我彻底搞懂了 SSE,原来流式响应效果还能这么玩的?(附 JS/Dart 双端实战)
前端·面试·github
炼金术7 小时前
SkyPlayer v1.2.0 : AI 字幕-端侧 Whisper 实时语音识别实践
ffmpeg·openai
宁雨桥7 小时前
Gitee迁移GitHub开源全攻略:一键配置自动同步,仅需维护单一仓库
gitee·开源·github
掘金安东尼7 小时前
⏰前端周刊第 452 期(2026年2月2日-2月8日)
前端·javascript·github