上传 SRT 文件,即可快速转换为适用于 HTML5 播放器的 WebVTT 格式。所有处理都在你的浏览器中完成。
WebVTT 是 Web Video Text Tracks 的缩写,是为浏览器中的 HTML5 视频设计的字幕格式。VTT 文件可以包含字幕、闭字幕、章节标记以及其他定时文本轨道。与 SRT 不同,WebVTT 文件总是以 WEBVTT 头部开头,并且毫秒部分使用点号而不是逗号。
如果你在自己的网站中使用 HTML5-<video> 元素嵌入视频,或者使用现代网页播放器,WebVTT 通常是更可靠的选择。SRT 在许多播放器中都能使用,但它不是 HTML5-<track> 元素的原生格式。没有 VTT 文件时,浏览器中的字幕可能不会显示。
将 SRT 文件拖入上方区域。工具会删除 SRT 块编号,添加必需的 WEBVTT 头部,并把时间戳从 00:00:01,000 转换为 00:00:01.000。转换完全在浏览器内完成,文件不会发送到服务器。
手动把 SRT 转成 VTT 看起来很简单,但细节错误很容易让字幕失效。最常见的问题包括缺少 WEBVTT 头部、服务器 MIME-Type 设置错误,或时间戳仍然使用逗号而不是点号。这个转换器会自动处理这些格式差异。
主要区别一眼就能看出来:SRT 使用连续编号和带逗号的时间戳;WebVTT 不需要编号,以 WEBVTT 开头,并使用点号表示毫秒。
1 00:00:01,000 --> 00:00:04,000 欢迎观看我们的视频。 2 00:00:04,500 --> 00:00:07,000 这条字幕将被转换为 WebVTT。
WEBVTT 00:00:01.000 --> 00:00:04.000 欢迎观看我们的视频。 00:00:04.500 --> 00:00:07.000 这条字幕将被转换为 WebVTT。
字幕文本会保留下来。只会修改结构和时间戳写法,让浏览器可以把文件识别为 WebVTT。
转换后,你可以通过 <track> 元素直接在 HTML5 视频中使用 VTT 文件。
<video controls width="800">
<source src="/videos/demo.mp4" type="video/mp4">
<track
src="/subtitles/demo.vtt"
kind="subtitles"
srclang="zh"
label="中文"
default>
</video>
请确认 VTT 文件路径正确,并且服务器以 text/vtt MIME-Type 提供该文件。否则浏览器可能无法加载字幕轨道。
| 特性 | SRT | VTT / WebVTT |
|---|---|---|
| 主要用途 | 适用于许多播放器和剪辑软件的简单字幕格式。 | HTML5 视频字幕轨道的网页标准。 |
| 文件头 | 不需要文件头。 | 必须以 WEBVTT 开头。 |
| 时间戳 | 使用逗号:00:00:01,000。 |
使用点号:00:00:01.000。 |
| HTML5 视频 | 不是 <track> 的原生格式。 |
可直接通过 <track src="...vtt"> 使用。 |
| 元数据 | 非常有限。 | 支持 NOTE 块、cue settings 以及其他 WebVTT 功能。 |
| 位置与样式 | 几乎没有标准化的样式选项。 | 在网页播放器中可支持 cue settings 和类似 CSS 的显示方式。 |
SRT 仍然适合剪辑软件、简单播放器和文件交换。WebVTT 更适合需要在网站、学习平台或浏览器播放器中稳定显示字幕的场景。
<video> 嵌入视频,建议使用 VTT。<track> 轨道添加。现代浏览器通常都支持 WebVTT。实际项目中的问题大多不是浏览器本身造成的,而是服务器配置错误、文件路径错误或 VTT 语法无效导致的。
| 浏览器 | WebVTT 支持 | 说明 |
|---|---|---|
| Chrome | 支持 | 可稳定配合 HTML5-<track> 使用。 |
| Edge | 支持 | 基于 Chromium,行为与 Chrome 非常接近。 |
| Firefox | 支持 | 支持 WebVTT,但对路径和 MIME-Type 检查较严格。 |
| Safari | 支持 | 支持 WebVTT;在 iOS 上尤其要注意正确路径和托管设置。 |
如果 VTT 文件在浏览器中没有显示,通常就是以下原因之一。文件看起来可能没问题,但只要路径、头部或服务器响应不正确,网页播放器仍然不会加载它。
| 问题 | 原因 | 解决方法 |
|---|---|---|
| 缺少 WEBVTT 头部 | 文件直接以第一个时间戳开头。 | 第一行必须是 WEBVTT,后面需要一个空行。 |
| MIME-Type 错误 | 服务器把文件作为 text/plain 或下载文件返回。 |
配置服务器,让 .vtt 文件以 text/vtt 返回。 |
| 时间戳使用逗号而不是点号 | SRT 使用 00:00:01,000,VTT 需要 00:00:01.000。 |
转换器会自动把时间戳改为 WebVTT 写法。 |
| track 标签中的路径错误 | src 路径没有指向实际的 VTT 文件。 |
检查 <track src="..."> 属性中的路径,并直接在浏览器中测试。 |
技术上有效的 VTT 文件只是第一步。发布字幕前,还应在视频中检查时间轴、可读性、换行和语言轨道是否与画面匹配。在 Subvideo.ai Studio 中,你可以可视化编辑字幕,并导出为 SRT、VTT、ASS 或 MP4。
在 Studio 中检查字幕将 .srt 文件拖到上方区域,或点击从设备中选择文件。
转换器会添加 WEBVTT 头部,删除 SRT 块编号,并将时间戳转换为 WebVTT 格式。
点击下载按钮,立即保存转换后的 WebVTT 文件(.vtt)。
SRT 是一种简单字幕格式,包含编号和带逗号的时间戳。VTT 是用于 HTML5 视频的 WebVTT 格式,以 WEBVTT 开头,并在时间戳中使用点号。
安全。转换直接在你的浏览器中运行,SRT 文件不会上传到我们的服务器。
是的。转换器可免费使用,并在浏览器中本地运行。
支持。转换器处理 UTF-8 文本,并保留带重音字符、阿拉伯语、中文、日语或韩语字符。
可以。用 HTML5 track 元素引入,并确保服务器以 text/vtt MIME-Type 提供 .vtt 文件。
常见原因包括缺少 WEBVTT 头部、track 路径错误、MIME-Type 不正确,或时间戳仍然使用逗号。
不会。它只会删除 SRT 块编号并调整时间戳。字幕正文中的逗号和标点会保留。