众所周知,ffmpeg功能强大,同时bug也不少(手动狗头),下面我们介绍ffmpeg如何在windows下如何调试

环境条件:win10,vs2022

1、打开vs2022,选择打开本地文件夹
在这里插入图片描述
打开我们编译好的ffmpeg目录,(如果想了解windows下如何编译ffmpeg,请移步至此),
在这里插入图片描述
在这里插入图片描述
注意:vs2017或者更高版本中,可以不创建解决方案直接调试exe,给一个大拇哥在这里插入图片描述

2、右击 ffmpeg.exe 文件,选择添加调试设置,在弹出框中选择本机,因为是 MSVC 编译的 ffmpeg ,所以选择 Native (本机)原生的方式,此时会创建一个launch.vs.json文件
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

3、ffmpeg.exe设置为启动项,右击ffmpeg.exe,选择设置为启动项,然后就可以点击run运行按钮了
在这里插入图片描述

在这里插入图片描述

4、现在调试 ffmpeg.exe 只会一闪而过,因为没有指定命令行参数,所以需要修改一下 launch.vs.json,内容如下:

{
  "version": "0.2.1",
  "defaults": {},
  "configurations": [
    {
      "type": "native",
      "name": "ffmpeg.exe help",
      "project": "bin\\ffmpeg.exe",
      "projectTarget": "",
      "args": [ "--help" ]
    },
    {
      "type": "native",
      "name": "ffmpeg.exe mux",
      "project": "bin\\ffmpeg.exe",
      "args": [ " -i E:\\tmp\\data\\1.mp4 -c copy E:\\tmp\\data\\1.flv -y" ]
    }
  ]
}

如上,我创建了两个调试选项,一个是 打印 help信息,一个是转码1.mp4 , 更多 launch.vs.json 参数请查看微软的文档《launch.vs.json 架构参考》

5、配置之后,可以看到,菜单栏有两个调试选项可以选择,我们选择ffmpeg.exe mux选项,如下:
在这里插入图片描述
6、添加断点,点击菜单栏调试–>新建断点–>函数断点
在这里插入图片描述
在这里插入图片描述
开始愉快的debug吧!!!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐