几周之前,在 YouTube 上看到了 Vim 创始人 Bram Moolenaar 在 Vim Conf 2018 上的主题报告,介绍了 Vim 的历史以及可能要添加的一些新特性,萌生了给这个视频配字幕的想法。
要制作字幕,需要字幕制作软件的协助,在网上查了一圈,发现arctime 是一款不错的字幕制作软件,经过比较,最后选择arctime 来制作字幕。
由于之前没有制作过字幕,对如何制作字幕没有任何概念,也走了一些弯路。做完了 Bram的这个演讲视频以后,对字幕制作过程有了一定了解。字幕制作大致分为两个过程:
- 制作字幕稿
- 匹配字幕稿和视频的时间轴
制作字幕稿#
这一步其实和 arctime 没有任何关系,简单来说,制作字幕稿,就是把视频中人物的讲话,按照一行一句或者一行一个分句的格式转变为文字。值得注意的是,每一行的文字不宜过长,因为字幕是要显示在视频上的,一方面视频画面放不下太长的字幕,需要转行,另外太长的字幕,读者可能来不及看完,视频就跳到了下一句了。根据我的经验,如果讲话者一句话比较短,可以作为一行文本,如果一句话较长,最好分为两行或者三行来书写,在合适的地方断开即可。
字幕稿制作这一步是最耗时的,Bram 的演讲大约有 59 分钟,我转写为字幕稿的时间大约是周末两天再加平时下班以后的好几天时间,总时长估计有 10 小时。
字幕稿制作完成以后,保存为文本文件即可,最好使用 UTF-8 编码。
匹配字幕稿和视频时间轴#
这一步就是把字幕稿的每一行文本和视频中的每一小段时间对应起来。打开 arctime,先导入视频,然后再导入字幕稿(可以直接拖拽视频和字幕稿导入),视频会显示在左边,字幕稿内容会显示在右边。
点击视频左下方工具栏的 “视频快速拖拽创建工具”,即可开始匹配字幕稿和时间轴,点击播放以后,时间轴会快速移动,等时间轴移动到字幕稿当前行文字的结尾,暂停播放,然后拖动鼠标,可以在时间轴上形成一个字幕块,对应于当前字幕稿行。把鼠标移动到字幕块的开头或者结尾,还可以微调字幕块的开始和结束时间,便于校准字幕块。制作字幕块的时候,可以用工具栏的“标记点”标记文本的起点和终点,方便拉取字幕块的时候确定当前文本对应时间轴的起始位置。
重复以上过程,就可以制作其他的字幕块,直到所有字幕块制作完成。
收尾与完成#
字幕块完成制作以后,可以把时间轴的光标移动到视频开头,开始播放,查看制作的字幕的效果,对字幕块进行精调。
字幕换行#
如果播放中,发现某一个字幕太长,可以暂停播放,双击该字幕块,然后在合适的地方插入换行符 \n
即可把字幕分为两行。另外,如果发现字幕中有文字错误,也可以直接点击字幕块对文字进行修改。修改字幕块以后,别忘了点击右边的对号确定修改。
修改字幕块以后,可以按 F5 刷新字幕,查看新的字幕样式。
字幕字体编辑#
点击 “样式管理“ —> “编辑选定样式“ 可以对字幕的字体进行设置,包括字体的颜色,大小,位置等等。
字幕导出与视频生成#
如果只需要生成外挂字幕,可以选择 “导出” —> “字幕稿”,设置导出的字幕格式。
如果需要把字幕固化到视频中,需要压制视频,选择“导出”菜单中的 “快速压制视频” 选项,根据自己的需要压制视频即可。
导出的字幕稿或者压制的视频和原视频都位于同一根目录下面。
最后,压制的视频已经上传到了 bilibili 上,点击 这里 可以查看。