核心要点
先决定字幕是直接烧进画面里,还是做成单独的字幕文件。烧录字幕在任何地方都能播放,但永远关不掉。单独的字幕文件(通常是
.srt)可以随时开关、后期修改,也能被搜索引擎读取,但前提是对方平台支持上传字幕文件。想清楚这一点之后,剩下的流程每次都一样:整理出文字、拆成带时间的句段、对着视频核对一遍、最后上传或导出。字幕文件本质就是纯文本,改起来很简单。
视频剪完了。这时候有人要字幕,或者你发现大部分人是把声音关掉看视频的,于是打开导出窗口,却找不到一个明显的“字幕”选项。这很正常。字幕跟音乐、调色不一样,它并不是视频本身的一部分。大多数情况下,字幕是完全独立的东西,有自己的文件、自己的格式、自己的一套规则。
所以在写下第一行字幕文字之前,有一个选择必须先做,而这个选择会决定后面所有的工作方式。几乎所有人都是无意中做了这个选择的。这篇文章帮你有意识地做一次。
烧录进画面,还是做成独立文件
给视频加文字,基本上就两种办法。
烧录字幕(硬字幕)是在导出视频时直接把文字画进画面里的。这些文字的像素就是视频画面的一部分,跟一个台标或下方字幕条没有区别。它们永远显示在屏幕上,观众没法关掉、没法调大小、没法改样式或翻译,如果打错了一个字,你得把整段视频重新导出才能修。好处是它换来了极强的兼容性:任何播放器、任何平台、任何被别人转发或录屏的版本,字幕都跟着走,不需要对方配合。
独立字幕文件(外挂字幕)是和视频分开存放的一个文件。播放的时候,播放器读取这个文件,再把文字实时叠加在画面上。观众可以自己选择开或关。你要改一个错别字,只需要编辑这个文本文件再重新上传,视频本身完全不用动。想加第二种语言,也只是再加一个文件而已。因为什么都没有烧进画面,底下的视频始终是干净的。
问题在于,外挂字幕这条路完全取决于对方平台支不支持。有些平台很欢迎你上传字幕文件,还会给观众一个字幕开关按钮;有些平台无论如何都不接受上传字幕文件。如果目标平台根本不支持字幕文件上传,那么烧录字幕就是唯一的办法,你把字幕文件格式做得再规范也没用。
动手之前,先去确认目标平台到底支持什么。如果同一段视频要发到两个地方,一个支持字幕文件、另一个不支持,那你可能真的需要导出两版:一个是干净画面配独立字幕文件的版本,一个是烧录好字幕的版本。这确实麻烦,但这就是老老实实的答案。
字幕文件里到底装着什么
.srt格式是接受度最广的字幕文件格式,除非有特别的理由,否则应该优先用它。它的内容简单到几乎有点无聊:每一句字幕依次由四部分组成——一个序号、一行时间码、一行或几行文字,然后是一个空行。接着下一句字幕重新开始。
时间码的写法是时:分:秒,毫秒——先是时分秒,然后用逗号隔开毫秒。这个逗号很关键。如果播放器要的是逗号,文件里写的却是句点,播放器可能会拒绝整个文件,或者直接跳过这一句,而这种出错往往看起来什么都没发生,而不是弹出一个报错提示。如果想逐字段搞懂这个格式,可以读一读这篇讲SRT格式细节的文章,值得看一次。
.vtt格式是你会遇到的另一种字幕格式。它以单独一行的WEBVTT开头,毫秒前用句点而不是逗号隔开,字幕序号是可选的。除此之外,它还能做SRT做不到的事:把字幕放在屏幕上非底部中间的位置,还能携带样式信息。如果你想让字幕避开画面上的某个图形元素,VTT就是能实现这一点的方式。
如果你手上是VTT文件,而对方平台只要SRT,转换起来很简单,但要清楚转换之后会发生什么。时间码保留,文字保留,但位置信息、样式和任何附加元数据会被永久丢弃,因为SRT格式本身根本没有地方存放这些信息。这不是转换工具的问题,而是目标格式压根没有对应字段。能选的话,尽量往不丢失信息的方向转换;不能选的话,就要接受字幕会落到默认的底部居中位置。
标准流程:整理文字、打时间轴、核对、上传
一旦决定走哪条路,实际操作就永远是同样的四步,顺序也不变。
- 整理出文字。把视频里说的每一句话都写下来。
- 拆句并打上时间。把文字拆成一个个句段,给每句标好开始和结束时间。
- 对着视频核对一遍。打开字幕播放一遍,把不对的地方改掉。
- 上传字幕文件,或者带字幕重新导出视频。
如果全靠手打,第一步是最耗时间的环节。你可以手动逐字听写,这样准确,但耗时是视频长度的好几倍;也可以先让软件自动转写,再人工校对,这样速度快很多,但会产生一些需要专门找出来改的错误——通常出在人名、专业术语,以及背景噪音很大的地方。对大多数人来说,自动转写加上仔细校对是比较合适的默认做法。有了文字之后,这个网页版字幕生成工具可以帮你完成拆句和打时间轴的部分。
SozAI是一款支持iOS、Android和macOS的转写应用,能把音频文件、视频文件、录音以及YouTube链接转换成带说话人标注的文字,并支持99+种语言之间的翻译;网站上的网页工具用来处理字幕文件和统计字数,但本身不做语音转写。这只是众多选择之一——如果你用的剪辑软件已经能生成可用的文字稿,直接用那个就好,省掉这一步。
如果你手上只是一整段没有任何时间信息的纯文本,这个纯文本转SRT的工具可以帮你完成拆句、写好时间码格式这些机械性的工作。之后你还是需要对着视频微调时间点,因为没有工具能光靠文字猜出说话人在哪里停顿。
一句字幕应该停留多久
时间轴打得好不好,是业余字幕最容易露馅的地方,而常见的两种错误恰好相反。
停留不到大约一秒的字幕,很难读清楚。眼睛需要时间去找到文字、看懂内容、再回到画面上,不到一秒根本来不及。观众看到的只是一闪而过的东西,隐约觉得自己漏看了什么。这种情况通常发生在文字稿按每个逗号都切句,或者一个很短的插话——一声“嗯”、一个名字、一声笑——被单独做成一句字幕,长度刚好等于那个声音本身的长度。
停留超过大约八秒的字幕是另一个问题,几乎总是因为两句话被合并成了一句字幕。字幕太长,观众读完之后它还杵在那里,这只是有点烦;真正的麻烦是,第二句话往往还没被说出来,字幕就已经出现在画面上了。文字和声音渐渐脱节,观众开始提前往下读,而不是好好看画面。
尽量让每句字幕停留时间落在这两个极限之间,按句子和分句的自然停顿去拆分,而不是按固定字数硬切,句与句之间也要留出呼吸的空间。如果拿不准一句字幕是不是太长,就按说话人实际的语速把它念出来,如果念到中间喘不上气,那就说明它该拆成两句了。
上传前怎么检查字幕文件
字幕文件本质是纯文本,你可以在任何电脑上用任何文本编辑器打开它,从头看到尾,想改什么就改什么。这大概是关于字幕最有用的一个知识点,因为它意味着,改一个错字最快的办法,几乎从来不是重新打开剪辑软件、在时间线上找到那一句、再重新导出。而是直接打开文件、改掉这个字、保存。
会出错的地方分两类,检查方式也不一样。
结构性错误会导致文件根本加载不出来:句与句之间少了一个空行、时间码里该用逗号的地方写成了句点、结束时间早于开始时间、两句字幕的时间互相重叠。这些问题人眼扫一遍很容易漏掉,但机器一查就能发现,这正是SRT文件校验工具的用处。上传之前先跑一遍校验,就能提前抓住这类错误——否则它们表现出来往往就是字幕悄无声息地不显示。
内容性错误只有实际播放才能发现:名字拼错了、字幕整体慢了半秒、某句话字面上没错但读起来很别扭。把字幕打开,按正常速度从头看到尾,看的时候要盯着文字而不是画面。这个过程需要花跟视频一样长的时间,没有捷径可走。
这些方法解决不了什么
平台自动生成的字幕,跟你自己做的字幕文件不是一回事。它们是平台直接从音频里生成的,没有你的参与,往往在最关键的词上出错——产品名、人名、专业术语——而且你通常没多少办法去调整它。如果平台允许你上传自己的字幕文件,用它替代自动生成的猜测结果,效果会明显好一截。如果平台不允许上传,那烧录字幕就是唯一能保证屏幕上出现的文字是你自己选定的方式。
烧录字幕的“永久性”常常被低估。一旦导出,文字就成了画面的一部分。这段视频没法再翻译成别的语言,没法提供不带字幕的版本,小屏幕上的观众也没法把字放大。如果这段视频未来有可能被重复利用、翻译成别的语言、或者交给别人再加工,那就应该单独保留一份干净的母版视频,以及那份字幕文件本身,即便你今天发布的这一版是把字幕烧进去的。
格式之间的转换,每次都要付出同样的代价。从VTT转成SRT,位置信息和样式会永久丢失,因为SRT根本没地方存放它们。如果你精心做过能避开画面上某个图形的字幕位置,之后为了满足某个只认SRT的平台去做转换,那些字幕就会落到默认位置,正好挡住那个图形。提前知道这一点,总比等视频发布之后才发现要好。

