VS2022编译调试FFmpeg

  1. Git 工具下载,安装直接选择好安装路径,直接下一步到安装完成。
    在这里插入图片描述
  2. 配置好工程目录,msvc为编译生成的目标文件的目录,source为源代码目录
    在这里插入图片描述
  3. 进入source目录,通过Git下载FFmpeg
    git clone https://github.com/ShiftMediaProject/FFmpeg.git

在这里插入图片描述

  1. FFmpeg下载好后,可以打开FFmpeg->SMP->ffmpeg_deps.sln解决方案
    在这里插入图片描述
  2. 下载依赖项,管理员方式执行SMP下的project_get_dependencies.bat
    注:这脚本需要git依赖,你的项目如果不是git拉下来的话只能手动下载了,也有可能下载失败,也需要手动下载,根据ffmpeg_deps.sln解决方案下各个依赖项,依赖项在https://github.com/ShiftMediaProject这个目录下,手动方式就是一个个下载了,比如下载libass,首先找到libass
    在这里插入图片描述
  • 点击libass
    在这里插入图片描述
  • 在source目录下运行git命令行
    在这里插入图片描述
  1. 所有依赖项目下载后,编译ffmpeg还有额外的编译头文件,在msvc目录下,创建如图所示目录
    在这里插入图片描述
    1、下载 opengl 的 glext.h 和 wglext.h 到 " msvc/include/gl/ " 目录下。(下载点 这里
    2、下载 opengl 的 khrplatform.h 到 " msvc/include/KHR/ " 目录下。(下载点 这里
    3、下载 nv-codec-headers 项目的 “include” 文件夹下的内容到 " msvc\include " 目录下。(git 项目点 这里
    4、下载 AMF 项目的 “amf/public/include” 文件夹下的内容到 " msvc/include/AMF/ "目录下。 (git 项目点 这里)

  2. msvc 来编译 ffmpeg 还需要 安装 NASM 才能编译所有的汇编文件。ShiftMediaProject 为编译 ffmpeg 提供的自定义构建项【nasm / yasm】默认 VS是没有支持的,所以需要用第5步同样的方法下载nasm 和 yasm,并安装,否则有些有汇编的工程无法加载
    【nasm】下载地址:https://github.com/ShiftMediaProject/VSNASM.git
    【yasm】下载地址:https://github.com/ShiftMediaProject/VSYASM.git
    安装:nasm与yasm的安装方式完全一样,这里以nasm举例:进入下载好的nasm目录,找到install_script.bat文件,不要直接运行,先 以管理员身份,在预设好 VS 相关变量的脚本环境中 (开发者命令行 / Developer command),运行该 install_script.bat 脚本
    在这里插入图片描述
    执行成功即可,yasm用同样的方式安装。

一切准备就绪,可以打开ffmpeg_deps.sln解决方案开始编译了,编译的过程中,会有编译不通过的两个工程,一个是gnutls项目,一个是libilbc项目
是因为这两个项目的子项目没有自动下载导致,我这个版本是gnutls,libilbc这两个项目有子项目,不同版本可能有不同的项目存在子项目。
这里以gnutls项目为例,通过编译,可以发现gnutls\devel目录下libtasn1目录是空的。
在github上找到这个子项目的地址进行下载即可。
在这里插入图片描述
点击该gnutls的libtasn1这个子项目进入下面页面,点击libtasn1
在这里插入图片描述
就可以找到libtasn1的git地址,通过git clone下载到gnutls/devel目录下即可。
在这里插入图片描述
同样的方法根据编译提示,找到libilbc缺少的依赖子项目下载下来即可。

最后大功告成

在这里插入图片描述

在这里插入图片描述
可以变成调试了,Debug编译ffmpeg生成文件是ffmpegd,调式会提示找不到ffmpeg,这需要做如下配置
在这里插入图片描述
改好之后就可以调试了

在这里插入图片描述
技术参考:
使用 VS2015 编译并调试 ffmpeg:https://www.cnblogs.com/BensonLaur/p/10989115.html

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

华衣在盛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值