SRT 和 VTT 有什么区别?字幕格式该选哪个
一文讲清 SRT 和 VTT 两种字幕格式:语法差异、各平台支持情况,以及什么场景该用哪一种。
作者 PodText 团队发布于 更新于

导出字幕时被要求在 SRT 和 VTT 之间二选一,你可能想过:这真的有区别吗?有,但该选哪个取决于你要发布到哪里。下面把两种格式、它们的差异和各自的适用场景讲清楚。
SRT 是什么?
SRT 是 SubRip Text 的缩写,是历史最久、支持最广的字幕格式之一,最初是 2000 年代初为 SubRip 软件设计的。格式非常简单:序号、时间范围、字幕文字,每个字幕块都按这个结构重复。
一个典型的 SRT 文件长这样:
1
00:00:01,000 --> 00:00:04,500
Welcome to the show. Today we're talking about transcription.
2
00:00:05,200 --> 00:00:08,800
Our guest has been in the audio industry for over a decade.
注意时间戳里秒和毫秒之间用的是逗号,这是 SRT 特有的写法。SRT 没有正式规范,不支持元数据,也不支持定位。很多播放器能识别少量基础标签,比如表示斜体的 <i>,但支持程度不一,所以最好把 SRT 当作纯文本对待。
VTT 是什么?
VTT 指 WebVTT(Web Video Text Tracks),是由 W3C 制定规范、专为网页设计的格式(W3C WebVTT)。结构和 SRT 相似,但有几处关键区别。
VTT 文件以 WEBVTT 头部开头,时间戳用句点而不是逗号,并且支持可选的样式和定位:
WEBVTT
00:00:01.000 --> 00:00:04.500
Welcome to the show. Today we're talking about transcription.
00:00:05.200 --> 00:00:08.800 align:right
Our guest has been in the audio industry for over a decade.
VTT 还支持字幕块设置(cue settings,包括定位、对齐、尺寸)、通过 CSS 设置行内样式,以及不作为字幕显示、但可供 JavaScript 使用的元数据字幕块。它的能力更强,但前提是你发布的平台真的用得上这些能力。
SRT 和 VTT 的主要区别
样式支持。 SRT 没有标准的样式写法。VTT 在浏览器中支持字幕块定位和基于 CSS 的样式。如果你需要在网页上实现定位字幕或统一样式的字幕,用 VTT。
时间戳写法。 SRT 用逗号(00:00:01,000),VTT 用句点(00:00:01.000)。差别很小但很关键:很多解析器对此要求严格,混用会导致字幕失效。
文件头部。 VTT 文件第一行必须是 WEBVTT,SRT 文件没有头部。所以手动生成和解析 SRT 会稍微简单一点。
元数据和章节。 VTT 支持 NOTE 块(注释)和不显示的元数据字幕块,SRT 不支持。如果你在做一个要用章节标记或定时元数据的网页播放器,VTT 是正确选择。
浏览器支持。 HTML5 的 <track> 元素读取的就是 VTT 格式(MDN)。不借助 JavaScript 库或先做格式转换,浏览器无法通过 <track> 播放 SRT。
各平台支持情况
| 平台 | SRT | VTT | 来源 |
|---|---|---|---|
| YouTube | 支持 | 支持 | YouTube 帮助 |
| Vimeo | 支持 | 支持(推荐) | Vimeo 帮助 |
支持(文件名形如 video.en_US.srt) | 不支持 | Facebook 帮助 | |
HTML5 视频(<track>) | 不支持(需 JS) | 支持 | MDN |
| WordPress 视频区块 | 不支持 | 支持 | WordPress 文档 |
| Final Cut Pro | 支持 | 不支持 | Apple 支持 |
规律是:对剪辑软件和接受字幕文件的社交平台来说,SRT 是稳妥的选择;对你自己掌控的网页播放器来说,VTT 才是正确选择。YouTube 和 Vimeo 这类平台两种都收。至于 Instagram 和 TikTok 的普通帖子,应用会自己生成字幕,不接受上传字幕文件;想用自己的字幕,就把字幕直接压进视频画面。
什么时候用 SRT
以下情况用 SRT:
- 往 Facebook 上传字幕
- 使用 Final Cut Pro、Premiere Pro 或 DaVinci Resolve 等视频剪辑软件
- 需要最大兼容性,且不需要样式
- 要把字幕文件发给可能使用各种不同工具的客户或合作者
SRT 是稳妥的默认选项。不确定平台支持什么的时候,SRT 几乎总能用。
什么时候用 VTT
以下情况用 VTT:
- 在网站上用 HTML5
<track>元素嵌入视频 - 给 WordPress 视频区块添加字幕
- 需要在网页上使用定位字幕或带样式的字幕
- 在开发自定义的网页视频播放器
如果视频以网页为主、播放器由你掌控,VTT 是正确选择。
用 PodText 同时生成两种格式
你不必一开始就做选择。PodText 的视频转文字工具可以转录视频文件,并同时导出 SRT 和 VTT,以及纯文本和 Markdown。同样的导出也适用于音频和播客单集。上传文件、拿到文字稿,然后下载你需要的格式,或者两种都下。具体步骤见如何给视频加字幕。
如果同一个视频要发到多个地方,这一点很实用:社交媒体上传用 SRT,网站内嵌播放器用 VTT,全部来自同一份文字稿。
比起格式选择,更重要的是字幕本身要准确。先拿到一份干净的文字稿,再导出成平台需要的格式。
参考来源
核对日期:2026-09-26。
- W3C, WebVTT: The Web Video Text Tracks Format
- MDN Web Docs,
<track>: The Embed Text Track element - YouTube Help, Supported subtitle and closed caption files
- Vimeo Help Center, Troubleshooting: Caption file types
- Facebook Help Center, What is the naming convention for SubRip (.srt) files?
- WordPress Documentation, Video block
- Apple Support, Import closed captions into Final Cut Pro for Mac



