FFmpeg是一款知名的開源音視頻處理軟件,它提供了豐富而友好的接口支持開發者進行二次開發。
FFmpeg項目功能復雜而龐大,基本上支持所有常見的音視頻處理操作,如封裝格式轉換、音視頻轉碼、音視頻播放和剪輯、視頻添加水印濾鏡等。
本文使用msys2和mingw64編譯FFmpeg,并使用Visual Studio 2022創建項目集成FFmpeg。
一、安裝msys2
msys2下載地址:我本地的安裝目錄是:C:\\msys64。

設置msys2環境變量,在path中添加:C:\\msys64\\mingw64\\bin。

二、下載FFmpeg
本文使用的FFmpeg版本是5.0.1。

三、編譯FFmpeg
在msys2的云倉庫中有x264的安裝包,所以我們不用自己編譯。
1、菜單中打開:MSYS2 MINGW64,執行命令,pacman -S mingw-w64-x86_64-x264,即可安裝x264。
2、安裝完x264之后,只需要在 configure的時候加上 --enable-libx264 ,編譯FFmpeg:
./configure --prefix=/home/Administrator/ffmpeg/ffmpegDLL/ --enable-shared --enable-sdl2 --enable-libx264 --enable-gpl
make -j8
make install
3、編譯完成之后,文件目錄C:\\msys64\\home\\Administrator\\ffmpeg\\ffmpegDLL下看到編譯好的文件。

4、編譯成功后,可以使用ffmpeg.exe -codecs查看 h264 的編碼器。
四、Visual Studio創建項目
分別拷貝上一步中編譯好的FFmpeg文件到項目中:拷貝include文件拷貝到項目,拷貝bin目錄中lib文件到項目中。

使用Visual Studio 2022創建C++控制臺項目,打開項目屬性頁修改相關配置:
1、修改“附加包含目錄”:

2、修改“附加庫目錄”:

3、創建測試代碼:
#include
extern "C" {
#include
#include
}
#pragma comment(lib, "avcodec.lib")
#pragma comment(lib, "avutil.lib")
int main(int argc, char* argv[])
{
av_log_set_level(AV_LOG_DEBUG);
unsigned int codecVer = avcodec_version();
av_log(NULL, AV_LOG_INFO, "FFmpeg version is: %d\\n", codecVer);
return 0;
}
執行代碼,終端輸出FFmpeg的版本:FFmpeg version is: 3871332,至此,FFmpeg集成成功。
-
編碼器
+關注
關注
45文章
3953瀏覽量
142615 -
視頻處理器
+關注
關注
3文章
111瀏覽量
16489 -
ffmpeg
+關注
關注
0文章
51瀏覽量
7942
發布評論請先 登錄
基于windows的msys2中搭建環境編譯 執行make后提示錯誤,是什么原因?
使用msys2 mingw64編譯nuclei openocd源碼出錯的原因?
使用msys2 mingw64編譯nuclei openocd源碼出錯怎么解決?
使用ming64和vs2019編譯v5.0.2和master的bsp/simulator報錯怎么解決?
Matlab mex -setup 找不到編譯器:為MATLAB安裝MinGW64 Compiler編譯器
AI 學習:安裝 MinGW-w64 編輯器
什么是MinGW-w64
如何配置并搭建QMK環境
【躍昉科技BF2開發板試用體驗】MSYS2環境安裝
簡單介紹在Windows系統下安裝Verilator的步驟
基于Windows系統的SpinalHDL開發環境搭建步驟
編譯esp-iot-solution的例出現錯誤怎么解決?
在windows上安裝了msys2,riscv-gnu-toolchain工具鏈編譯報錯是為什么?
QMK環境搭建
【躍昉科技BF2開發板試用體驗】MSYS2環境安裝
使用msys2和mingw64編譯FFmpeg
評論