个性化开发FFmpeg需要会从源码开始编译出自己需要的库文件,后续进行源码级优化时也方便进行。
FFmpeg官方代码下载地址:FFmpeg-github
git克隆源码:
git clone https://github.com/FFmpeg/FFmpeg
码云下载地址(码云每天从官方仓库同步一次):FFmpeg-gitee
下载好源码后,就可以编译了。Linux下使用的是GCC编译器和make工具,并且FFmpeg没有提供cmake编译文件,所以我们只能用configure来生成Makefile文件,然后使用make编译。
可以通过
./configure --help
来查看编译配置参数。
推荐编译配置:
./configure \
--prefix=/usr \
--disable-static \
--disable-stripping \
--enable-cuda \
--enable-cuvid \
--enable-gpl \
--enable-libx264 \
--enable-libx265 \
--enable-libxvid \
--enable-nvdec \
--enable-nvenc \
--enable-shared \
--enable-version3
有的参数是相互依赖的,有的参数是系统自动决定的。根据实际调整。
如果不需要cuda支持,需要自行调整。
编译源码:
make -j20
-jn表示使用几个线程编译源码,最多不超过所用PC核心数的2倍。
安装库文件
make install
如果安装的目标文件夹需要root权限需要在sudo下进行。
本文首发于:FFmpeg4入门01:编译