<<返回

CentOS 8.5如何编译安装ffmpeg和openh264、fdk-aac?

1. 安装依赖库和fdk-aac

2. 下载openh264源码

3. 配置ffmpeg所需的openh264目录环境变量

4. 编译并安装openh264

5. 下载ffmpeg源码

6. 配置ffmpeg

7. 编译并安装ffmpeg

8. 测试ffmpeg

补充说明

CentOS 8.5如何编译安装ffmpeg和openh264、fdk-aac?

ffmpeg是一个非常棒的视频处理软件,它能在linux、macos和windows下运行。

下面简单记录下在CentOS 8.5系统里如何从源码编译安装ffmpeg以及它所需要的openh264和fdk-aac软件。

1. 安装依赖库和fdk-aac

dnf install gcc gcc-c++ git nasm
dnf install fdk-aac fdk-aac-devel freetype freetype-devel

CentOS 7 里安装fdk-aac参考:

wget "http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm"
rpm -Uvh nux-dextop-release-0-5.el7.nux.noarch.rpm
yum -y install gcc gcc-c++ git nasm
yum -y install fdk-aac fdk-aac-devel freetype freetype-devel

2. 下载openh264源码

git clone "https://github.com/cisco/openh264.git"

推荐用git下载安装,在openh264安装的过程中会用到git。

3. 配置ffmpeg所需的openh264目录环境变量

export PKG_CONFIG_PATH=openh264源码保存路径

4. 编译并安装openh264

cd 进入openh264所在目录

make
make install

安装好之后,记得创建软连接:

ln -s /usr/local/lib/libopenh264.so.2.3.0 /usr/lib/libopenh264.so.7

具体版本号请查看你安装的openh264。

5. 下载ffmpeg源码

wget "https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2"
tar -jxvf ffmpeg-snapshot.tar.bz2

如果tar无法解压,先安装bzip2:

dnf install bzip2

6. 配置ffmpeg

解压源码后进入源码目录执行:

./configure --enable-libopenh264 --enable-libfdk-aac --enable-libfreetype --disable-x86asm

7. 编译并安装ffmpeg

在ffmpeg目录下执行:

make
make install

8. 测试ffmpeg

ffmpeg -version

补充说明

如果你有安装了x264和x264-devel库, 需要先删除它们,否则ffmpeg执行的时候会报错:

ffmpeg: error while loading shared libraries: libopenh264.so.7: cannot open shared object file: No such file or directory

删除x264和x264-devel库:

dnf remove x264 x264-devel

如果在CentOS 7.9中编译安装好之后,出现上述错误,需要安装x264和x264-libs库:

yum -y install x264 x264-libs