字幕时间偏移 — 向前或向后调整字幕时间戳
按精确偏移量调整字幕时间戳。修复 SRT 和 VTT 文件的同步漂移——支持正向或负向偏移,一次性批量偏移所有字幕条目。
字幕同步漂移是几乎每个看视频的人都遇到过、却很少有人叫得出名字的问题。字幕比演员开口早了半秒,或晚了一秒,而且偏移量是恒定的——每一条字幕都比应有的时间提前或落后同样的量。罪魁祸首几乎总是字幕文件假设的起始时间与视频实际起始时间不一致:片头被剪掉了,片头 logo 被移除了,或者字幕文件是从不同剪辑、不同版本的片源里提取出来的。修复方法在概念上极其简单——给每个时间戳加上或减去一个固定偏移量——但执行起来却很烦人,因为一个包含 1200 条字幕的 SRT 文件意味着要修改 2400 处时间戳。
字幕偏移工具同时对文件中的每一条字幕施加同一个偏移量。粘贴字幕,按小时、分钟、秒和毫秒设置偏移量(正向让字幕推后,负向让字幕提前),预览前几条调整后的时间戳以确认方向无误,然后下载结果。工具同时支持 SRT 和 WebVTT 两种格式,所有非时间内容原样保留,对会变为负值的时间戳则做截断处理并附上警告标注。针对最常见的同步问题——字幕文件与视频始终错开固定的秒数——从打开到完成,十秒钟即可搞定。
使用方法
拖入你的字幕文件
拖入一个 .srt 或 .vtt 文件。解析器读取所有时间块,并显示首尾两个时间戳,方便你在应用偏移之前确认当前的同步范围。
设置时间偏移量
按小时、分钟、秒和毫秒输入偏移量——正向使字幕靠后,负向使字幕靠前。实时预览会更新前几条字幕的时间戳,你可以在应用之前确认偏移方向和幅度是否正确。
下载偏移后的文件
下载调整后的字幕文件,格式为 .srt 或 .vtt。所有非时间内容——字幕序号、正文、样式——都按原样完整保留。
常见问题
字幕同步漂移是怎么造成的?
最常见的原因是字幕文件与视频之间的帧率不一致(23.976 fps 的字幕用在 25 fps 的视频上)、片头或片尾被裁剪,或者重新编码时在开头添加或删除了帧。对所有时间戳施加一个固定的偏移量是标准的修复方法。
可以只偏移文件中的某一段字幕吗?
当前版本会对所有字幕统一施加偏移量。如果需要按段落偏移,请先把文件拆成多段,逐段偏移后再拼接。按段落偏移的功能计划在后续版本中提供。
偏移后时间戳变成负数会怎么处理?
会变为负值的时间戳会被截断为 00:00:00,000。受影响的字幕在输出中会被高亮,并附上警告标注,方便你手动检查和调整。
偏移跨过 24 小时边界时会回绕吗?
不会——时间戳被当作从零开始的线性毫秒值。超过 23:59:59,999 的字幕会保留溢出的数值(例如 25:30:00,000)。大多数视频播放器都能正常处理这种超过 24 小时的时间戳。
限制说明
- 不支持线性漂移修正本工具只施加一个固定的偏移量。对于渐进式漂移(字幕开头同步、随后慢慢脱节的情况),固定偏移无法应对。线性漂移修正需要对每条字幕做比例计算,目前尚不支持。
- 不支持基于帧率的偏移帧率转换(23.976 -> 25、24 -> 29.97)需要乘性因子,而不是加性偏移。帧率转换请使用 Subtitle Edit 这类专业字幕编辑器。
- 不支持 ASS 格式不支持 ASS 字幕偏移,因为 ASS 时间戳采用不同格式,且常常包含嵌入了时间的 override 块。请先用外部工具把 ASS 转成 SRT,完成偏移后再转回 ASS。
平台说明
- macOS
- macOS 终端的等价命令是 `ffmpeg -itsoffset 2.5 -i subs.srt -c copy shifted.srt`,但 FFmpeg 的字幕偏移作用于容器层,而非文本轨本身。如需直接修改 SRT 文本,使用本工具更合适。
- Linux
- `subshift` 是用于此任务的小众命令行工具。本浏览器工具无需安装包,并能在保存前直观确认偏移后的时间戳。
- Web
- 完全在浏览器中运行。字幕文件在本地解析,从不上传——对处理尚未发布的内容的字幕特别有用。