编译FFmpeg添加ass等字幕滤镜模块

在我之前编译安装的FFmpeg上是会报错的,处理字幕在编译FFmpeg时需要支持 FreeType FontConfig iconv ,系统中需要有相关的字库。
依赖库为 FreeType-2.6.5 FriBidi-0.19.7 Fontconfig-2.12.1

重新编译安装FFmpeg

最好是把原先的 FFmpeg 删除在重新编译安装,执行 configure 命令
./configure --prefix=/usr/local/ffmpeg --enable-gpl --enable-nonfree --enable-libfdk-aac --enable-libx264 --enable-libx265 --enable-filter=delogo --enable-debug --disable-optimizations --enable-libspeex --enable-videotoolbox --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --cc=clang --host-cflags= --host-ldflags= --disable-x86asm --enable-libass --enable-libfreetype --enable-libfontconfig --enable-libfribidi --enable-shared --disable-yasm --enable-libfreetype

找不到 libass

解决方案:

下载 libass源码

这个库还需要 FreeType FriBidi-0.19.7 , Fontconfig-2.12.1 ,把源码都下载下来。

编译安装步骤(忽略版本号,以下载的源码版本号为主):

1、先来编译freetype-2.6.2(ubuntu):

./configure --prefix=/usr --disable-static && make && sudo make install

上面是在ubuntu上的,在MAC上不要指定安装目录,即如下:

./configure --disable-static && make && sudo make install

2、接下来编译fontconfig-2.11.1(ubuntu):

./configure --prefix=/usr -disable-docs && make && sudo make install

上面是在ubuntu上的,在MAC上不要指定安装目录,即如下:

./configure -disable-docs && make && sudo make install

3、接下来编译fribidi-0.19.7

编译fribidi的时候需要先下载expat源码并编译。

expat官网expat源码下载地址

./configure && make && sudo make install

开始编译 fribidi(ubuntu):

./configure --prefix=/usr && make && sudo make install

在MAC上用以下指令:

./configure && make && sudo make install

4、以上三个依赖库编译完后,开始编译libass (ubuntu):

./configure --prefix=/usr --disable-static && make && sudo make install