ffmpeg的编译选项浅析

熟悉ffmpeg的同学都知道在编译ffmpeg的时候,可以”定制”一些模块,只使能需要的模块,不使能多余的模块。比如如果我们需要一个视频编码库,可能只使能x264就足够了,用这句:–enable-libx264.如果需要解析RTSP协议,那只使能rtsp模块,用这句:–enable-demuxer=RTSP.这样一来可以提高我们的编译速度,二来编译出来的库或者可执行文件也不会很大。

想必每个人初次接触,都会感觉很神奇。在这里我就简单介绍一下其中的奥秘。

ffmpeg提供了一个编译配置脚本,FFmpeg configure script,即configure文件。configure代码看起来有那么点复杂,没必要进去细究一二了。大概就是说,该文件接收一系列输入配置参数,并输出makefile文件、配置文件以及config.h头文件。其中config.h里面,会根据我们的输入参数,生成若干宏定义。比如如果输入参数有–enable-demuxer=RTSP,则会生成一个CONFIG_RTSP_DEMUXER的宏。

打开config.h,可找到如下代码:

#define CONFIG_RTSP_DEMUXER 1

可以猜测一下,Makefile里面自然也包含了RTSP demuxer相关代码了.这样在编译的时候,就会把RTSP demux相关代码编译进去.

在我们调用ffmpeg的时候,首先我们需要调用函数:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值