前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >编译ffplay并导入IDE断点调试

编译ffplay并导入IDE断点调试

作者头像
雪月清
发布2023-02-13 14:49:31
7450
发布2023-02-13 14:49:31
举报
文章被收录于专栏:雪月清的随笔雪月清的随笔

前言

在我们学习如何使用FFmpeg开发一款简单播放器的时候,ffplay一定是一个非常不错的参考例子

如果能搭载ffplay的源码联调环境来进行断点调试的话,相信对我们理解ffplay一定能起到事半功倍的效果

本篇文章详细记载了如何在Mac端编译出可调试执行文件ffplay_g和在xcode中进行源码debug的步骤

编译环境

Mac m1、FFmpeg 5.1.2、xcode13.4.1

选择使用FFmpeg最新版本5.1.2的原因是ffplay的编译依赖sdl2,通过brew安装sdl2的版本为最新的2.24.0,只有FFmpeg5.1.2+的版本才能匹配上

(ffplay的编译依赖sdl2)

(sdl2的版本要求)

编译ffplay

首先需要安装sdl2

代码语言:javascript
复制
brew install sdl2

然后进入下载的FFmpeg5.1.2的源码根目录,在终端中执行:

./configure --enable-debug=3 --enable-ffplay --enable-sdl2 --disable-optimizations --disable-asm

--enable-debug=LEVEL是用来控制编译器,比如gcc的debug level选项的,不是用来控制ffmpeg的debug level选项的,所以上面不加这个option也行

代码语言:javascript
复制
https://gcc.gnu.org/onlinedocs/gcc/Debugging-Options.html

执行完成后查看下Programs是否存在ffplay,如果存在就表示环境准备好了

如果中途有报错,可以查看ffbuild/config.log进行排查

接下来进行编译

代码语言:javascript
复制
make clean
make -j8

编译产物

导入xcode

新建工程

语言选择C

引用FFmpeg源码,然后经过一段时间的导入,大概5分钟+

配置header和lib的seach path

新建target并配置源码目录

配置FFmpegDebuggerMake的Executable和执行参数

需要注意的一点是这里的参数需要输入绝对路径

断点调试

运行起来后我们就可以愉快的断点Debug了

~~END~~

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-12-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 雪月清的随笔 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档