使用VS2015在win7 x64上编译调试FFmpeg(附源码和虚拟机下载)

1. 前言

在文章《使用VS2017在win10 x64上编译调试FFmpeg(附源码和虚拟机下载)》中,我们在win10+VS2017的环境下基于开源项目ShiftMediaProject完成了FFmpeg源码调试环境的配置。在win7+VS2015的环境下,ShiftMediaProject配置过程和win10+VS2017下类似,但编译问题会更多一些。经过一番排查,将编译问题解决后,即可进行源码调试。

2. 配置过程

2.1 下载ShiftMediaProject

下载ShiftMediaProject的过程,可参考《使用VS2017在win10 x64上编译调试FFmpeg(附源码和虚拟机下载)》。可以直接复用已经下载好的ShiftMediaProject源码包。进行安装操作,这里不再赘述。

2.2 解决编译错误

直接在win7上使用VS2015编译上述ShiftMedia,会出现编译错误,下面逐个解决。

2.2.1 未找到方法[MSBuild] NormalizePath

使用VS2015在win7 x64上编译调试FFmpeg(附源码和虚拟机下载)_第1张图片
原因可能是MSBuild版本不一致,导致某些MSBuild函数找不到,做等效修改即可。

解决方法:
修改 ShiftMediaProject\source\VSNASM\nasm.targets 文件,修改前:

nasm.targets修改前

修改后:

nasm.targets修改后

2.2.2 未定义标识符DXVA_PicParams_VP9

使用VS2015在win7 x64上编译调试FFmpeg(附源码和虚拟机下载)_第2张图片

原因是代码中检测了系统类型,win7系统下,没有此结构的定义,相关函数也不会被使用。

解决方法:
使用宏关闭不使用的定义和引用。

解决未定义标识符DXVA_PicParams_VP9

2.2.3 未找到 stddef.h 等头文件

原因是 Windows SDK 版本安装不完全,需要安装对应的SDK版本10.0.10240.0。在以下路径查看已安装的SDK版本:

C:\Program Files (x86)\Windows Kits\10\Include\

安装方法比较简单,可以通过VS安装包修改安装,也可以通过微软官方的SDK安装工具安装,这里不再赘述。

3. 下载

3.1 可成功编译的源码包下载

关注公众号Qt未来工程师,后台回复 win7 vs2015 FFmpeg调试源码包 获取下载地址。

3.2 可直接调试FFmpeg的虚拟机下载

关注公众号Qt未来工程师,后台回复 win7 vs2015 FFmpeg调试虚拟机 获取下载地址。

4. 结语

至此,win7或win10平台上的FFmpeg源码调试环境均已搭建完成,源码调试的准备工作已全部完成。

你可能感兴趣的:(音视频开发,ffmpeg)