自动字幕会逐字转写你说的话,所以一个你不想出现在屏幕上的词,就会出现在屏幕上。解决办法是在生成时对文字稿应用一个词表:列出这些词,每个词都会显示为首字母加星号。值得明白的是,这只改变文字。音频里仍然说着这个词,如果你需要连声音一起去掉,那是在音轨上的另一项剪辑。
自动字幕是逐字照录的。它写下你说的话,这正是它的意义所在,直到你说的某个词,是你并不想用粗体印在视频正中间的那个词。
手动删改一次还行。当你每天都在发布,或者某个你常挂在嘴边的词,恰恰是你永远不想出现在屏幕上的词时,就行不通了。
为什么这需要一条规则,而不是一次修改
字幕轨并不是一整块文字。它是一连串的字幕条,每一条都包含各自带时间的单个词语,这也正是逐词高亮得以实现的原因。
这种结构就是手动修改很繁琐的原因。你想屏蔽的那个词会出现在好几条字幕里,每次都是一个独立的带时间的词元,你必须把每一个都找出来。剪辑一有改动,重新生成字幕,它们又全都回来了。
规则则能经受住重新生成。你只需列出这个词一次,每一次生成字幕时都会在输出时应用这条规则。
这类字幕依靠的是Apple的Speech框架(英文),它支持在本地完成识别,这就是音频永远不需要发到别处才能被识别的原因。
把字幕首先当作无障碍手段,其次才是互动手段。大多数团队被要求达到的标准,是W3C的预录媒体字幕(英文)。
屏蔽实际做了什么
在iPhone上的Zella里,文字稿规则位于Studio下的Captions中。把一个词加入屏蔽列表,它就会显示为保留首字母、其余部分替换为星号,所以“damn”会变成“d***”。
有三个细节,决定了一条规则是管用,还是一半时间都会漏掉:
- 大小写无关。无论这个词被转写成什么大小写,列表都能匹配。
- 标点不会破坏匹配。一个转写时后面带着逗号或句号的词仍然能匹配,因为匹配的是去掉标点后的词本身。
- 在生成时和生成后都能应用。新生成的字幕出来时就已经屏蔽好了,你也可以把规则应用到已经存在的字幕轨上,而不用重新生成。
保留首字母是有意的选择。把一个词完全替换掉,会让观众纳闷说了什么。保留首字母则保留了阅读节奏,并让这个屏蔽一眼就能被认出是屏蔽。
人们常搞错的部分
给字幕打码并不会给音频打码。
写下来听起来理所当然,但它仍然会让人中招,因为在你工作时,这个词从你正在看的那部分视频里消失了。说出来的词在音轨里原封不动。任何开着声音的人,听到的都和录制时一模一样。
如果你需要它从音频里也消失,那是另一项剪辑:在时间线上把这个词剪掉,或者在它上面降低片段音量。先做这一步,再让字幕规则处理文字,因为剪音频会改变字幕赖以生成的时间轴。
对于会惩罚语音中某些词的平台,只有音频剪辑才算数。对于会读取你的字幕或上传的字幕文件的平台,文字规则才是关键。大多数创作者两样都需要。
一同提供的另外两条规则
同一个面板里还有另外两条规则,因为它们解决的是同一类问题:
Capitalize sentences会把每条字幕的第一个词首字母大写。语音识别常常返回一连串小写,而一条从句子中间开始、没有大写字母的字幕,一眼看上去就很潦草。
All caps则相反,把所有字母都大写,这是那种很吵的短视频风格。它是一种风格选择,而不是整洁问题;两者同时开启时,它会有意覆盖句首大写,因为一行已经全是大写字母的文字,根本不存在单独的首字母大写。
一个经得起考验的工作流程
避免返工的顺序:
- 先定剪辑。每一条字幕的时间都来自于它。
- 在时间线上处理任何需要从音频里去掉的词。
- 生成字幕。
- 添加你的屏蔽词和大小写规则,并让它们应用到字幕轨上。
- 最后设置样式:文字不再变化之后,再挑选字幕样式。
如果你使用多种语言,请注意屏蔽列表是一个字面词语列表。你放进去什么,它就屏蔽什么,并且只针对你放进去的那种语言,所以双语视频需要两种拼写都加上。从另一种语言生成英文字幕时也是如此,那种情况下无论说的是什么语言,屏幕上的词都是英文。
常见问题
给字幕打码也会给音频加哔声吗? 不会。规则只改变字幕文字。说出的词仍然在音频里,需要在时间线上另行剪辑。
被屏蔽的词看起来是什么样? 首字母,后面的字母用星号代替,所以一个四个字母的词会变成一个字母加三个星号。
一个词的每种大小写形式都要添加吗? 不用。匹配会忽略大小写,也会忽略附着在词上的标点。
重新生成字幕后规则还有效吗? 有效。规则保存在项目里,每次生成字幕时都会应用,你也可以把它们应用到已有的字幕轨上。
能用它把一个词替换成另一个词,而不是屏蔽吗? 屏蔽列表做不到。它屏蔽一个词,而不是替换成另一个词。如果你想换个说法,直接编辑那条字幕即可。
ALL CAPS会覆盖首字母大写规则吗? 会,这是有意的。一行全大写的文字,没有单独的首字母大写可以设置。
相关文章