ass字幕里面通常指定了字体,需要观看者自行安装对应字体文件。

电脑上好说,但电视系统不支持安装字体,这次下载的剧集在电视 VLC 上播放时字幕显示成了豆腐块。

串流时在媒体服务器端把字幕烧录进视频帧太费CPU,所以最简单粗暴的解法就是直接把字幕文件里的字体样式干掉。

再次用到万能的 ffmpeg:

ffmpeg -i ./video-ass.mkv -map 0 -c:v copy -c:a copy -c:s srt video-srt.mkv
  • -c:s srt 指定字幕格式为 srt
  • -c:v copy, -c:a copy 视频和音频不进行处理直接复制,速度很快
  • -map 0 内嵌多个字幕时全部处理