What is FFmpeg?

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。它提供了录制、转换以及流化音视频的完整解决方案。

What is x264?

H.264是ITU(国际通信联盟)和MPEG(运动图像专家组)联合制定的视频编码标准。而x264是一个开源的H.264/MPEG-4 AVC视频编码函数库,是最好的有损视频编码器。

What is lame?

LAME是一个开源的MP3音频压缩软件。它自1998年以来由一个开源社区开发,目前是公认有损质量MP3中压缩效果最好的编码器。

Getting started

下载以上三种软件源码以及nasm2.13.03:

wget https://ffmpeg.org/releases/ffmpeg-3.4.2.tar.bz2

git clone git://git.videolan.org/x264.git

wget https://sourceforge.net/projects/lame/files/lame/3.100/lame-3.100.tar.gz/download lame-3.100.tar.gz

wget http://www.nasm.us/pub/nasm/releasebuilds/2.13.03/nasm-2.13.03.tar.gz

分别解压gz和bz2压缩包:

tar -jxvf ffmpeg-3.4.2.tar.bz2

tar -zxvf lame-3.100.tar.gz

tar -zxvf nasm-2.13.03.tar.gz

编译安装nasm:

./configure
make
make install

以相同的命令编译安装x264和lame:

./configure --enable-shared --enable-static
make
make install

最后是ffmpeg:

./configure --enable-libmp3lame --enable-gpl --enable-libx264
make
make install

尝试运行ffmpeg -version,报错:

error while loading shared libraries: libavdevice.so.57

查找一下该文件路径:

find / -name libavdevice.so.57

将该文件所在路径写入ldconfig即可

vim /etc/ld.so.conf
ldconfig
05-13 03:25