经常有童鞋请教我在window如何编译64位ffmpeg + QSV的方法,这两天闲暇无事又重写编译了一遍,随便写成博客与大伙分享
第一步配置环境
1.下载 mingw-w64
2.下载 msys
3.下载 mfx_dispatcher
4.如图所示,将的mingw-W64 和MSYS分别解压
(注:我的mingw64放在C:\ MinGW 64,C:\ MinGW 64 \ MSYS)
5。安装YASM
一个,到http:/ / yasm .tortall.net /下载.html下载Win64 .exe(实际文件名为yasm-1.3.0-win64.exe)
b,将其改名为yasm.exe,放到C:\ mingw 64 \ msys \ 1.0 \ bin目录下
6.修改配置文件C:\ MinGW64 \ msys \ msys.bat,在最前面加入1行,设置vs2010的环境变量
调用“D:\ Program Files \ Microsoft Visual Studio 10.0 \ VC \ bin \ amd64 \ vcvars64 。蝙蝠”
7.配置环境变量
一,找到MinGW64的安装目录下的斌目录
B,右键计算机,选择属性,然后点击高级系统设置,再点击环境变量
C,鼠标选中路径双击
8,检测是否安装OK
打开控制台输入gcc -v
第二步1,编译mfx_dispatcher
(注:windows编译qsv之前需要安装mfx_dispatcher,它相当于是应用程序和具体的硬件加速库之间的一个中间层,它负责帮助应用库定位底层代码,这样应用库就可以不用直接链接到硬件加速的具体实现)
1,解压mfx_dispatch-master
(注:C:\ mingw64 \ msys \ home \ mfx_dispatch-master)
2,打开C:\ mingw64 \ msys进入/ home / mfx_dispatch-master目录下编译libmfx
a,autoreconf -i
b,。/ configure --prefix = / usr / local --host = x86_64-w64-mingw32
c,make -j
d,make install
注:make install后在/ user / local /可以看到include / mfx和lib / libmfx.a libmfx.la lib / pkgconfig几个文件
第三步,编译ffmpeg链接libmfx
注:ffmpeg需要使用pkg-config定位libmfx库,这个库的libmfx.pc文件在安装完mfx_dispatcher之后会安装在/ usr / local / lib / pkgconfig目录下。为了让FFMPEG的配置脚本能够找到它你需要把这个地址加入到PKG_CONFIG_PATH中。
1,导出环境变量
export PKG_CONFIG_PATH = / usr / local / lib / pkgconfig
2,编译的FFMPEG
--prefix = / home / h26x --enable-shared --disable-static --disable-programs --disable-doc --enable-libmfx --disable-everything --disable-avdevice --disable-swresample - disable -postproc --disable-avfilter --enable-decoder = h264 --enable-decoder = h264_qsv --arch = x86_64 --host-os = win64 --disable-debug --extra-cflags = -I / usr / local / include --extra-ldflags = -L / usr / local / lib