当前位置:首页 > 编程笔记 > 正文
已解决

04-流媒体-ffmpeg.c源码分析

来自网友在路上 164864提问 提问时间:2023-10-28 18:25:33阅读次数: 64

最佳答案 问答题库648位专家为你答疑解惑

ffmpeg.c是一个使用ffmpeg库的参考代码,实现了视频格式转换的功能,类似于我们常用的格式工产,源代码的的目录是:
ffmpeg-4.2.2/fftools/ffmpeg.c
和前面的ffplay一样,我们分析其源代码,主要只是为了让读者了解ffmpeg.c此文件的大概流程,并且熟悉常用的ffmpeg库的API。
下面我们首先从主函数开始分析,如下

int main(int argc, char **argv)
{......avdevice_register_all();......show_banner(argc, argv, options);......ret = ffmpeg_parse_options(argc, argv);......if (transcode() < 0)......exit_program(received_nb_signals ? 255 : main_return_code);......
}

主函数有如下主要函数组成,每一个函数的功能如下
avdevice_register_all()//注册所有编码器和解码器
show_banner()//打印输出ffmpeg的版本信息、编译时间、编译选项、类库信息
ffmpeg_parse_options()//解析输入的命令
transcode()//转码
exit_program()//退出和清理资源

从上面分析可以看出,主核心的函数是转码函数transcode(),其内容如下:
static int transcode(void)
{......ret = transcode_init();.
查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"04-流媒体-ffmpeg.c源码分析":http://eshow365.cn/6-27010-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!