TOOL 02 · SUBTITLES
快播盒子字幕工坊:转格式与挪时间轴
粘贴字幕文本,或者选一个本机的 .srt / .vtt 文件。转换与偏移都在这个页面里完成,内容不会发到任何地方。
它具体做了什么
输入会被逐行扫描。每一块字幕由三部分组成:可选的编号行、一行时间码、一到多行正文。时间码两种写法都认:srt 用逗号分隔毫秒,vtt 用点号。小时位可以省略,毫秒位不足三位会补零。
转成 vtt 时会补上 WEBVTT 头,毫秒分隔符换成点号,并保留时间码后面的定位参数。转成 srt 时丢掉这些定位参数,因为 srt 没有对应写法——这一点是有损的,心里要有数。
偏移怎么算
偏移是对每一条字幕的起止时间同时加上同一个毫秒数。字幕比画面早,就填正数把它往后推;字幕比画面晚,就填负数。往前偏之后小于零的条目会被截到 00:00:00,000,并在结果里告诉你有几条被截过。
出错会怎么报
时间码解析失败、箭头写错、结束时间早于开始时间、时间码下面没有正文——这几类问题都会带着行号列出来,出问题的那一块会被跳过而不是被猜着修。上面那个载入一段写坏的字幕按钮就是用来看这个行为的:它故意放了四类错误,转换之后错误清单会直接列出行号。
一条都解析不出来时,工具会停下并报错,不会丢给你一个空文件假装成功。转好的字幕想马上验一下,直接拿到本地播放器挂上去就行;没有片子的话,那边可以一键载入示例短片。
乱码要在上游解决
这个页面按 UTF-8 读文件。老的简体字幕常常是 GBK 或者 GB18030,读进来会是一片问号或者方块。遇到这种情况先用本机的文本编辑器另存为 UTF-8,再回来处理。浏览器端猜编码不可靠,与其猜错不如让你看见乱码。乱码的完整成因与几种典型表现,写在字幕手册的乱码那一节。
另外一件常被误会的事:封在 mp4 或 mkv 里面的字幕轨,网页端根本读不到,所以也无法在这里转换。这是容器层的限制,容器与编码那一篇讲了原因。