ffmpeg加入libass

1 libass编译

libass使用的版本是0.13.2。

libass下载地址:http://www.linuxfromscratch.org/blfs/view/svn/multimedia/libass.html

依赖库为FreeType-2.6.5FriBidi-0.19.7Fontconfig-2.12.1,下载地址分别为:

http://www.linuxfromscratch.org/blfs/view/svn/general/freetype2.html

http://www.linuxfromscratch.org/blfs/view/svn/general/fribidi.html

http://www.linuxfromscratch.org/blfs/view/svn/general/fontconfig.html

1.1 FreeType编译                 需要安装 harfbuzz-1.3.4.tar.bz2

sed -ri "s:.*(AUX_MODULES.*valid):\1:" modules.cfg &&
 
sed -r "s:.*(#.*SUBPIXEL_(RENDERING|HINTING 2)) .*:\1:g" \
    -i include/freetype/config/ftoption.h  &&
./configure --prefix=/usr/local/freetype2 --disable-static &&
make
make install

1.2 FriBidi编译

./configure --prefix=/usr/local/fribidi  &&
make
make install
 

1.3 Fontconfig编译    提示找不到 freetype2  需要配置 PKG_CONFIG_PATH

推荐使用Fontconfig-2.12.1,否则编译libass会提示错误,

./configure --prefix=/usr/local/fontconfig \
            --sysconfdir=/etc    \
            --localstatedir=/var \
            --disable-docs       \
            --docdir=/usr/share/doc/fontconfig-2.12.1 \
            --enable-libxml2  &&
make
make install
/*替换新的fontconfig.pc*/
/*如果找不到libxml2,就安装libxml2-devel*/

1.4生成ass

当freetype,fribidi,fontconfig安装成功后,执行如下:
 
./configure --prefix=/usr/local/ass --disable-static &&
make
make install
 

2 编译ffmpeg

执行编译脚本(加上--enable-libass),如:
./configure --enable-gpl --enable-shared --prefix=/usr/local/ffmpegzf --enable-debug --disable-yasm --disable-optimizations --disable-asm --disable-stripping --enable-pthreads --enable-libx264 --enable-libass --enable-fontconfig
make 
make install

3遇到的问题

问题1
编译ass时,
 No package 'fribidi' found  Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
解决办法:
export PKG_CONFIG_PATH=/usr/local/fribidi/lib/pkgconfig:$PKG_CONFIG_PATH
 
问题2
编译ass时,
configure: error: Either DirectWrite (on Windows), CoreText (on OSX), or Fontconfig(Linux, other) is required. If you really want to compile withouta system font provider, add --disable-require-system-font-provider
解决办法:
安装Fontconfig-2.12.1,并执行export PKG_CONFIG_PATH=/usr/local/fontconfig/lib/pkgconfig:$PKG_CONFIG_PATH
 
问题3
编译ffmpeg时,
ERROR: libass not found using pkg-config
解决办法:
export PKG_CONFIG_PATH=/usr/local/ass/lib/pkgconfig:$PKG_CONFIG_PATH


外挂字幕与内嵌字幕

外挂字幕相对于内嵌字幕来说对视频的质量损害就会小很多,外挂的意思就是 在视频之外单独运行的一种字幕文件,对视频本身的分辨率损害很小甚至为零。而内嵌的字面意思就是将视频连带外挂字幕用专有的录制软件重新将视频录制一遍,成为一个新的视频;这种方法虽然解决了视频体积过大和播放器不兼容等问题,但是在重新录制视频过程当中会无意识的损害原视频本身的码率,使重新录制出来的 视频分辨率大大不如原视频,所以在选择外挂与内嵌字幕时需结合自身情况考虑视频需要进行选择。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值