参考文章:https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu
这里一定要注意的是上面这个链接的教程是只生成静态库,到时候gcc 文件的时候静态库会打入到编译链接的结果中,这样就会导致本来应该动态生成的几十k的文件变成了一百兆左右。
这里会有 --enable-shared 和 --disable-shared 区别
部分内容转自:https://blog.csdn.net/ai2000ai/article/details/79641073?utm_source=blogxgwz4
1.下载 源码ffmpeg-*.tar.gz
到 Ffmpeg 官网 https://ffmpeg.org/download.html ,点击 More releases。选择最新的4.1.3 的bzip2 tarball。
2.编译安装
首先安装各种依赖库。可以参照文章第一行的参考文章链接。里面通过apt-get可以安装足够的依赖库。
sudo apt-get install nasm
sudo apt-get install yasm
sudo apt-get install libx264-dev
sudo apt-get install libx265-dev libnuma-dev
sudo apt-get install libvpx-dev
sudo apt-get install libfdk-aac-dev
sudo apt-get install libmp3lame-dev
sudo apt-get install libopus-dev
开始编译ffmpeg
tar -jxvf ffmpeg-3.4.2.tar.bz2
cd ffmpeg-3.4.2
./configure --enable-libx264--disable-yasm --enable-libfdk-aac --enable-gpl --enable-nonfree --enable-shared --prefix=/media/ffmpeg-3.4.2--extra-cflags=-I/usr/local/include --extra-ldflags=-L/usr/local/lib
make
make install
执行时出现问题:
./ffmpeg: error while loading sharedlibraries: libavdevice.so.57: cannot open shared object file: No such file ordirectory
解决问题:
vi /etc/ld.so.conf
加入:/usr/local/ffmpeg/lib
执行
ldconfig
为 Ffmpeg 加入环境变量:
vi /etc/profile
加入以下内容:
FFMPEG=/usr/local/ffmpeg
PATH加入:$FFMPEG/bin
使修改立即生效:
source /etc/profile
执行
ffmpeg -version