Scenarist Closed Caption
美国电视的字幕,以十六进制的形式存在于画面之中:每一帧携带两个字节,写在时间码之后。它以 DVD 创作软件 Scenarist 命名,至今仍是广播机构、流媒体服务和剪辑师用于 CEA-608 字幕的格式。
概览
| 扩展名 | .scc |
|---|---|
| 媒体类型 | 未注册 |
| 规范 | 字节本身遵循 CTA-608(原为 EIA-608,后为 CEA-608)。文件的其余部分则属于 Scenarist,并非独立的标准。 |
| 时间精度 | 一帧,按每秒 29.97 帧计算 |
| 文本编码 | 十六进制数字。字符是 CEA-608 自己的字符集:拉丁字母、西欧语言的重音符号,以及一些符号。 |
| 样式 | 斜体、下划线和七种颜色。没有粗体。 |
| 位置 | 一个 15 行、每行 32 列的网格 |
| 说话人 | 格式中没有。打字员在每次换人说话时写入 >>。 |
| 在容器中 | 字幕本身,而不是文件:广播和 HLS 中位于视频之内;QuickTime 和 MP4 中为 c608 轨道 |
文件的结构
先是文件头,然后是若干行:每行由一个时间码和从该帧开始发送的文字组成,每帧发送一个词。各行之间空一行。
Scenarist_SCC V1.0 00:00:22;07 9420 9420 94ae … 00:00:22;29 942f 942f 00:00:24;14 942c 942c
- 1 · 文件头
始终为
Scenarist_SCC V1.0。 - 2 · 时间码
该行第一个词发出的那一帧。之后的每个词依次占用下一帧。
- 3 · 词
每个词两个字节,以十六进制表示:一条命令,或两个字符。
一条字幕,逐词看
字幕并不是带时间的文字,而是电视字幕解码器所执行的命令。下面这组命令会加载 You're a jerk,(黄色),显示它,然后清除。
| 词 | 解码器执行的操作 |
|---|---|
9420 |
RCL 开始加载字幕,此时不可见 |
94ae |
ENM 清除正在加载的内容 |
94f2 |
PAC 移到第 15 行、第 4 列 |
97a1 |
Tab 偏移 再右移一列 |
912a |
行中代码 从此处开始为黄色。它占用一列,显示为一个空格。 |
d9ef 75a7 |
字符 Yo,然后是 u':每个词两个字符 |
942f |
EOC 立即显示已加载的内容 |
942c |
EDM 清空屏幕 |
命令要发送两次。 9420 9420 是一条命令:解码器会把第二个当作备份,以防第一个丢失。第一个数字是 9 而不是 1,是因为每个字节的最高位是奇偶校验位。
时间码
SCC 按每秒 29.97 帧计数,即美国电视的帧率。丢帧时间码以 ; 分隔帧数,每分钟会跳过帧号 00 和 01,但每十分钟不跳,这样时钟才能与实际时间保持一致。不丢帧时间码以 : 分隔,每一帧都编号,每小时会慢 3.6 秒。
三种字幕方式
| 方式 | 观众看到的效果 | 在 Subtitld 中 |
|---|---|---|
| 弹出式(Pop-on) | 字幕整体出现,并一直停留,直到被清除或替换。录播节目常用。 | 每条字幕一个 |
| 滚动式(Roll-up) | 文字边打边出现,并向上滚动,每次两至四行。用于新闻和体育直播。 | 每行一个字幕,直到下一行开始 |
| 绘制式(Paint-on) | 文字随书写逐步出现在屏幕上。 | 为其绘制的内容设置一个字幕 |
字符
每行 32 个字符,屏幕共 15 行。每帧发送两个字符,约每秒六十个,因此较长的字幕需要一点时间才能加载完成。
字符集并非 ASCII。ASCII 中有十个编码的含义不同(* 是 á,{ 是 ç,~ 是 ñ);另一组字符集补充了 ♪、½ 和 ® 等符号;还有两组补充了西班牙语、法语、葡萄牙语、德语和丹麦语的重音字母。
带重音的大写字母分两步发送。 É 先发送普通的 E,然后再发送一个替换它的代码,这样不支持扩展字符的解码器仍能显示一个字母。若书写程序省略了普通字母,前面的字符就会丢失:Ação 会显示为 Aão。Subtitld 会两步都发送。
样式和位置
| 代码 | 效果 | 在 Subtitld 中 |
|---|---|---|
| PAC | 设定起始的行,以及列(按四列为单位)或颜色、斜体 | 保留,映射为九个位置之一,以及样式 |
| Tab 偏移 | 再向右移动一到三列 | 保留,体现在位置中 |
| 行中代码 | 从此处开始使用斜体、下划线或颜色,显示为一个空格 | 保留 |
| 颜色 | 白、绿、蓝、青、红、黄、洋红 | 保留;其他颜色则取七种颜色中最接近的一种 |
| 粗体、字体、字号 | — | 格式中没有对应的表示 |
Subtitld 中的 SCC
- 每条字幕的文字,按每行 32 列排列
- 斜体、下划线和七种颜色
- 字幕的位置:顶部、中部或底部;左、中或右
- 说话人,以每次换人时的
>>形式保存 - 开始和结束时间,精确到帧
- 粗体、字体和字号
- CEA-608 字符集之外的字符,它们会变成普通字母或 "?"
- 与原文并列的译文
- 配音、说话人的名字和脸
保存 .usfx 项目即可保留属于 Subtitld 的内容。
打开 SCC 文件
Subtitld 按字幕解码器的方式解码文件,屏幕为 15 行、每行 32 列:
- 弹出式字幕,是从显示那一帧到被清除或替换那一帧之间的一条字幕;
- 滚动式字幕每行为一条字幕,绘制式字幕则为其绘制的内容设置一条字幕;
- 斜体、下划线和颜色会成为字幕的格式,行和列则决定其在屏幕上的位置;
- 行中代码占用的空格,在标点前会被去掉;
- 丢帧和不丢帧的时间码都能正确读取;
- 读取第一个字幕通道;若其为空,则读取第二个通道。
导出 SCC
依次点击 导出,再选择 字幕 和 SCC,可以设置以下选项:
- 文本原文或译文。
- 说话人名字不写出;放在文字前(Thom:…);或在每次换人时以
>>标记。 - 格式保留,或删除。
- 偏移时间把所有字幕整体提前或推后相同的时长。
- 时间码丢帧格式(广播所用),或不丢帧格式。
Subtitld 把弹出式字幕写入第一个通道。每条字幕在开始之前的几帧中加载,并在其开始的那一帧显示;显示和清除命令各占单独的一行,以便逐行读取的解码器也能按时显示。超过 32 列的行会自动折行,每行则按字幕的要求居中,或靠左、靠右。若某条字幕距离上一条太近,来不及按时加载,它会在加载完成后立即显示。
趣闻
第一批带隐藏式字幕的全国性电视节目于 1980 年 3 月 16 日播出,在 ABC、NBC 和 PBS 上,嵌入在画面的第 21 行。观众需要解码盒才能看到字幕。
从 1993 年起,依据 1990 年的《电视解码电路法》,在美国销售的 13 英寸及以上电视机必须内置字幕解码器。
每秒发送的字符数:按每秒 29.97 帧计算,每帧两个字符。一条完整的四行字幕需要两秒多才能发送完毕。
相关格式
在 Subtitld 中打开它,连同视频一起,在波形上重新打轴。