需要的工具:
visual studio 2019 (可以是其他版本,只是本人電腦上裝的為2019)
msys2
ffmpeg-7.1源碼
1.
修改msys2_shell.cmd
在msys2目錄修改msys2_shell.cmd
打開后找到行set MSYS2_PATH_TYPE=inherit
刪除開頭的rem
2.
運行msys2
運行x64 Native Tools Command Prompt for VS 2019
打開后跳轉到msys2目錄,并運行msys2_shell.cmd,會打開msys2窗口
在msys2窗口輸入cl,查看是否有輸出:
用于 x64 的 Microsoft (R) C/C++ 優化編譯器 19.29.30148 版
版權所有(C) Microsoft Corporation。保留所有權利。用法: cl [ 選項... ] 文件名... [ /link 鏈接選項... ]
如果沒有輸出,則表示沒有繼承到VS 2019環境,查看msys2_shell.cmd是否修改成功
3.
配置環境
在msys2中運行:
pacman -Syu
pacman -S make
pacman -S diffutils
pacman -S yasm
pacman -S nasmmv /usr/bin/link.exe /usr/bin/link.exe.bak
4.
編譯ffmpeg-7.1
在msys2窗口中進入ffmpeg-7.1目錄下
創建build.sh,輸入:
#!/bin/shexport CC=cl./configure \
--prefix=/d/lib/ffmpeg-7.1/build_windows \
--toolchain=msvc \
--arch=x86_64 \
--enable-x86asm \
--enable-asm \
--enable-shared \
--disable-programs \
--enable-d3d11va \
--enable-d3d12va \
--enable-dxva2 \
--disable-static
如果有報錯查看ffmpeg目錄下的ffbuild/config.log
文件
等待配置完成
然后依次輸入:
make V=1 j 8
make install
5.
libx264
如果需要libx264,需要自行下載libx264源碼
并編譯
在libx264目錄下運行:
CC=cl ./configure --prefix=<編譯物輸出目錄> --enable-shared
make -j 8
make install
在ffmpeg配置的時候添加(libx264為gpl):
--enable-gpl \
--enable-libx264 \
--extra-ldflags="-LIBPATH:<你的libx264編譯輸入目錄>/lib/" \
--extra-cflags="-I<你的libx264編譯輸入目錄>/include/"
即可編譯帶有x264的ffmpeg
msys2 下載
ffmpeg-7.1 源碼下載
libx264