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/[email protected]
        with:
          token: ${{secrets.GITHUB_TOKEN}}
          release: "v6.1"
          tag: "v6.1"
          replace: true
          files: >
            ffmpeg-wos-arm64.zip
相关推荐
黄交大彭于晏10 分钟前
发送文件脚本源码版本
java·linux·windows
独立开阀者_FwtCoder17 分钟前
stagewise:让AI与代码编辑器无缝连接
前端·javascript·github
Morpheon10 小时前
Cursor 1.0 版本 GitHub MCP 全面指南:从安装到工作流增强
ide·github·cursor·mcp
vfvfb10 小时前
bat批量去掉本文件夹中的文件扩展名
服务器·windows·批处理·删除扩展名·bat技巧
LinXunFeng13 小时前
Flutter - GetX Helper 助你规范应用 tag
flutter·github·visual studio code
草梅友仁14 小时前
AI 图片文字翻译与视频字幕翻译工具推荐 | 2025 年第 23 周草梅周报
开源·github·aigc
我命由我1234516 小时前
VSCode - VSCode 放大与缩小代码
前端·ide·windows·vscode·前端框架·编辑器·软件工具
PT_silver17 小时前
tryhackme——Abusing Windows Internals(进程注入)
windows·microsoft
爱炸薯条的小朋友17 小时前
C#由于获取WPF窗口名称造成的异常报错问题
windows·c#·wpf
qianmoQ18 小时前
GitHub 趋势日报 (2025年06月04日)
github