当前位置: 移动技术网 > IT编程>脚本编程>Shell > Windows msys2编译ffmpeg、cuda、intel media sdk之完整流程

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

2020年07月13日  | 移动技术网IT编程  | 我要评论

一、安装基础软件

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

本文地址:https://blog.csdn.net/sz76211822/article/details/107297209

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网