tigtools

SRT 转 VTT 转换器

将 SubRip (.srt) 字幕转换为 WebVTT (.vtt),适用于 HTML video 元素、YouTube 风格播放器或流媒体工具。文件不会离开你的设备。

在浏览器中运行 无需注册

ms

单位为毫秒;负数使字幕提前显示。1000 毫秒 = 1 秒。

或拖放到此处。文件会保留在你的设备上。

使用方法

  1. 打开 .srt 文件或粘贴字幕。
  2. 可选:按毫秒将所有字幕提前或延后。
  3. 检查 WebVTT 输出并下载 .vtt 文件。

工作原理

WebVTT 和 SRT 存储相同的内容:带编号或不带编号的字幕条目,包含开始时间、结束时间和文本,但细节不同。转换器会添加 WEBVTT 文件头,将时间戳中毫秒前的逗号改为点(00:00:01.000 而非 00:00:01,000),如果您保留编号,则将 SRT 编号用作字幕标识符。

WebVTT 不支持的格式会被移除:<font> 颜色标签以及 ASS 风格的位置代码(例如 {\an8})。粗体、斜体和下划线标签(<b>、<i>、<u>)会保留。文本中直接出现 --> 会结束当前字幕,因此会将其替换为 ->,多余的 < 和 & 字符会被转义。输入中的 Windows 行尾和 UTF-8 BOM 会被处理;不是有效 UTF-8 的文件会按 Windows-1252 读取。

偏移量会将每条字幕移动相同的量。结束时间早于 0:00 的字幕会被移除,开始时间早于 0:00 的字幕从 0:00 开始。若字幕随时间逐渐不同步,请改用字幕帧率转换器。

示例

网页视频字幕

将 lecture.srt 转换为 lecture.vtt,并使用 <track src="lecture.vtt" kind="subtitles"> 将其添加到 HTML5 视频中。

字幕延迟 1.5 秒

在偏移量中输入 -1500:下载的 .vtt 中每条字幕都会提前 1.5 秒出现。

常见问题

SRT 和 VTT 有什么区别?

WebVTT 以 WEBVTT 行开头,时间戳使用点号而非逗号,字幕编号为可选,并支持定位和样式。浏览器可在 HTML video 元素中原生播放 WebVTT,但不能播放 SRT。

格式会保留吗?

粗体、斜体和下划线会保留。字体颜色和 {\an8} 类位置代码会被移除,因为 WebVTT 没有对应功能。

我的重音字符显示不正常,为什么?

文件可能使用了较旧的编码保存。该工具会将非 UTF-8 文件按 Windows-1252 读取;如果你的文件使用其他编码,请先在文本编辑器中将其重新保存为 UTF-8。

隐私

你的字幕文件会在浏览器中读取和转换,不会上传或存储。