Windows msys2编译ffmpeg、cuda、intel media sdk之完整流程

17 篇文章 0 订阅

一、安装基础软件

vs编译器VS2017

Mingw: msys2-x86_64-20200629.exe, 默认安装

 

二、msys2使用VS编译器

1.编辑C:\msys64\msys2_shell.cmd

2.将rem set MSYS2_PATH_TYPE=inherit 修改为set MSYS2_PATH_TYPE=inherit

3.到开始菜单,执行“Visual Studio 2017->适用于 VS 2017 的 x64 本机工具命令提示”,在命令窗口下执行C:\msys64\msys2_shell.cmd

按回车出现

 

三、Msys2安装工具包

pacman -S make gcc diffutils yasm pkg-config git nasm

 

四、解压ffmpeg4.2.3到f盘

 

五、安装intel media sdk

1.安装版本MSDK2020R1.exe,从C:\Program Files (x86)\IntelSWTools\Intel(R) Media SDK 2020 R1\Software Development Kit路径下找到include和lib两个文件夹

2.在F:\ffmpeg-4.2.3 新建mfx目录,将include和lib两个文件夹拷贝到F:\ffmpeg-4.2.3\mfx目录下,在F:\ffmpeg-4.2.3\mfx\include目录下再新建一个mfx文件夹,将F:\ffmpeg-4.2.3\mfx\include下的所有.h文件放到F:\ffmpeg-4.2.3\mfx\include\mfx,截图如下:

3.将F:\ffmpeg-4.2.3\mfx\lib\x64下的libmfx_vs2015.lib改名为libmfx.lib。这样做的目的是因为默认的libmfx.lib编译会有LNK2019错误。

参考链接:https://blog.csdn.net/sz76211822/article/details/107282148

 

六、安装cuda

1.安装版本cuda_10.2.89_441.22_windows.exe,这个是支持windows7的。

2.安装完成后在C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2 找到开发包include和lib两个文件夹,如图:

3.在F:\ffmpeg-4.2.3 新建cuda目录,将include和lib两个文件夹拷贝到F:\ffmpeg-4.2.3\cuda目录下

 

七、注释掉编译错误的文件

搜索ffprobe.c 和 cmdutils.c 两个文件将CC_IDENT此注释 

参考链接:https://blog.csdn.net/sz76211822/article/details/107255441

 

八、进入ffmpeg目录

cd  “F:\ffmpeg-4.2.3”

 

九、FFMpeg编译支持NVidia CODEC

git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
 
cd nv-codec-headers
 
sudo make
sudo make install

 

十、编译

PKG_CONFIG_PATH="F:\ffmpeg-4.2.3\nv-codec-headers" \
./configure --prefix="f:\build" \
--toolchain=msvc \
--enable-debug \
--enable-shared \
--disable-static \
--arch=x86_64 \
--extra-cflags=-I"./nv-codec-headers/include" \
--extra-cflags=-I"./cuda/include" \
--extra-ldflags=-LIBPATH:"./cuda/lib/x64" \
--extra-cflags=-I"./mfx/include" \
--extra-ldflags=-LIBPATH:"./mfx/lib/x64" \
--enable-stripping \
--enable-optimizations \
--enable-x86asm \
--enable-asm \
--disable-network \
--disable-iconv \
--disable-schannel \
--disable-xlib \
--disable-zlib \
--enable-protocol=file \
--enable-libmfx \
--enable-cuda-sdk \
--enable-cuda \
--enable-cuvid \
--enable-nvenc \
--enable-nonfree \
--enable-libnpp \
--enable-dxva2 \
--enable-outdev=sdl2 \
--enable-nonfree \
--enable-version3 \
--enable-gpl \
--enable-ffmpeg \
--enable-ffplay \
--disable-ffprobe
要在Windows下使用MSYS2编译FFmpeg,你可以按照以下步骤进行操作: 1. 首先,下载FFmpeg的源代码。你可以在官方网站上找到下载链接。 2. 安装MSYS2 MinGW64。你可以在官方网站上找到安装程序。 3. 在MSYS2 MinGW64的命令行中,执行以下命令来配置编译环境和编译FFmpeg: ``` pacman -S mingw-w64-x86_64-toolchain // 安装mingw工具链 pacman -S msys/base-devel // 安装基础工作环境 pacman -S yasm nasm gcc // 安装汇编和编译器 pacman -S mingw64/mingw-w64-x86_64-SDL2 // 安装FFmpeg依赖的SDL2库 ``` 4. 解压下载的FFmpeg源码,并进入解压后的文件夹。使用以下命令进行配置和编译安装: ``` cd /path/to/ffmpeg-source-code // 进入FFmpeg源码文件夹 ./configure --prefix=/usr/local/ffmpeg // 配置安装路径 make // 编译源码(需要一段时间) make install // 安装编译结果 ``` 5. 编译完成后,你就可以在指定的安装路径(默认为/usr/local/ffmpeg)找到生成的相关文件。 请注意,编译过程中可能会出现一些错误。如果遇到问题,你可以参考一些博客或文档,或者重新安装MSYS2并重复上述步骤来解决问题。 希望这些步骤对你有帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [windows使用MSYS2编译FFmpeg](https://blog.csdn.net/ice_bear221/article/details/128515239)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值