如何使用 ffmpeg 选择刻录字幕的字体

如何使用 ffmpeg 选择刻录字幕的字体

使用 ffmpeg 和 libass 刻录字幕到视频时,默认选择 Arial 字体。如何选择字体字体大小手动?我在 Google 上搜索了这个问题,但无济于事。(如果有关系的话,我在 OS X 上。)

brew install ffmpeg --with-libass
ffmpeg -i video.avi -vf subtitles=subtitle.srt out.avi

ffmpeg version 2.8.3 Copyright (c) 2000-2015 the FFmpeg developers
[Parsed_subtitles_0 @ 0x7fc161421ac0] Shaper: FriBidi 0.19.7 (SIMPLE) HarfBuzz-ng 1.1.2 (COMPLEX)
[Parsed_subtitles_0 @ 0x7fc161421ac0] Using font provider coretext
[Parsed_subtitles_0 @ 0x7fc161421ac0] fontselect: (Arial, 400, 0) -> /Library/Fonts/Microsoft/Arial.ttf, -1, ArialMT

答案1

看看subtitles过滤选项

使用force_style传递给 ASS 参数的字体名称选项FontName来强制使用不同的字体:

ffmpeg -i video.avi -vf subtitles=subtitle.srt:force_style='FontName=DejaVu Serif' out.avi

您可能需要使用该选项指定字体路径fontsdir。如果您的字体提供商(coretext就您而言)不包含字体的安装路径,则适用此方法。

相关内容