本页目录▾

SRT 文件是什么?和 VTT 有什么区别

SRT 文件(.srt)是纯文本格式的字幕文件,按顺序列出每一条字幕:编号、起止时间和要显示的文字。 VTT 文件(.vtt,WebVTT)是同一思路的网页版,HTML5 视频播放器用的就是它。两种文件都能用记事本打开、在 VLC 里播放,互相转换也只要几秒。

SRT 这个名字来自 SubRip——早年一个从 DVD 里提取字幕的 Windows 小工具。这个格式能流行到今天,就是因为简单: 人人都能手动看懂、手动修改,几乎所有播放器、剪辑软件和视频平台都支持。

SRT 文件是什么?

下面是一个完整、合法的 SRT 文件,包含两条字幕:

1
00:00:01,000 --> 00:00:04,000
Where were you last night?

2
00:00:04,500 --> 00:00:07,250
I was at the station.
<i>Waiting for you.</i>
  • 序号(1、2):字幕编号,从 1 开始往上数。
  • 时间行(00:00:01,000 --> 00:00:04,000): 开始和结束时间,格式是 时:分:秒,毫秒。注意 SRT 在毫秒前用的是逗号;中间的箭头是两个减号加一个大于号,两边各有一个空格。
  • 文字:一两行台词。很多播放器还认 <i>(斜体)、<b>(粗体)这类简单标签。
  • 空行:表示这条字幕结束。少了空行,播放器常会把两条并成一条,或者干脆读不下去。

SRT 格式就这么多。它不包含视频、字体或颜色,只有文字和时间,所以文件很小,出了问题也好修。

VTT(WebVTT)文件是什么?

WebVTT(Web Video Text Tracks)是网页上的字幕格式:HTML5 的 <track> 标签加载的就是它, 很多在线视频平台和网课平台也收 VTT。YouTube 两种都能上传。同样两条字幕写成 VTT 是这样:

WEBVTT

NOTE Optional comment

1
00:00:01.000 --> 00:00:04.000
Where were you last night?

00:00:04.500 --> 00:00:07.250 line:10% align:center
I was at the station.
  • WEBVTT 文件头:第一行必须是 WEBVTT,没有的话浏览器不认。
  • 毫秒前用句点:00:00:01.000,不是逗号。小时可以省略(00:01.000)。
  • 序号可有可无:上面第二条就没有编号。
  • 字幕设置:写在时间后面,比如 line:10% align:center,可以把字幕挪到画面上方或调整对齐。
  • 其他功能:NOTE 注释、STYLE 样式块,以及标注说话人的 <v Anna> 标签。

SRT 和 VTT 的区别(顺带说说 ASS)

SRT(.srt)WebVTT(.vtt)ASS / SSA(.ass)
第一行序号 1WEBVTT[Script Info] 段
时间格式00:00:01,000(逗号)00:00:01.000(句点)0:00:01.00(精确到百分之一秒)
序号必须有可选没有
位置和样式只有简单标签字幕设置、CSS 样式完整支持:字体、颜色、位置、特效
适合播放器、剪辑软件、日常分享HTML5 视频、网页播放器、网课动漫字幕组、卡拉 OK、特效字幕

翻译方法对比表

简单说:给桌面播放器、电视、剪辑软件用 SRT;放到网站或网页播放器上用 VTT;需要花字、特定位置时才用 ASS,一般用 Aegisub 制作。

SRT 文件怎么打开

只想看看内容

它就是纯文本。Windows 上右键 → 打开方式 → 记事本;Mac 上右键 → 打开方式 → 文本编辑(TextEdit)。 别用 Word 打开,一保存就可能改掉换行和编码。

配着视频看

  • 直接拖:在 VLC 里播放视频,把 .srt 拖进窗口。
  • 菜单加载:VLC 里选 字幕 → 添加字幕文件。
  • 同名放一起:把 movie.mp4 和 movie.srt 放在同一文件夹,VLC 等大多数播放器会自动加载。

.vtt 在 VLC 里也是同样的用法;在浏览器里,VTT 由网页的视频播放器加载,不是直接打开的。

怎么制作和编辑 SRT 文件

1

在纯文本编辑器里写字幕

照着上面的例子写:序号、时间行、文字、空行。Mac 上先把 TextEdit 切成纯文本(格式 → 制作纯文本)。

2

保存为 .srt,编码选 UTF-8

记事本里「保存类型」选「所有文件」,文件名写 movie.srt,编码选 UTF-8。 不然可能存成 movie.srt.txt,或者中文在别的设备上变成乱码。

3

对着视频测试

在 VLC 里加载,看字幕是否按时出现。

几条字幕手打时间码没问题,整部视频就该用字幕软件了:免费的 Subtitle Edit(Windows) 可以边播放边打起止时间,还会提示时间重叠。已经有文字稿?用 TXT 转 SRT把每行变成一条字幕,先填上占位时间,再自己微调。

SRT、VTT、TXT 怎么互转

下面这些工具都在浏览器里运行,免费、无需注册:

SRT 常见问题和解决办法

  • 乱码(中文变成「�」、方块或一堆看不懂的符号):编码不对,多半是存成了 GBK 之类的旧编码。 用能切换编码的编辑器(如 Notepad++ 的「编码」菜单)打开,换到文字显示正常的编码,再转成 UTF-8 保存。
  • 整体不同步,从头到尾差同样的时间:用字幕平移工具整体前移或后移。 如果越往后差得越多,说明字幕是按另一个帧率做的,用字幕帧率转换修正。
  • 一行太长,或者导入剪辑软件后变成一整行、下面孤零零挂一两个字:用字幕自动换行拆成长度均衡的两行。
  • 播放器不认文件:检查后缀是不是真的 .srt(而不是 .srt.txt)、时间码用的是逗号、每条字幕后面都有空行。 .vtt 少了 WEBVTT 文件头也会这样。

怎么翻译 SRT 或 VTT 字幕

把字幕文件整个粘进通用翻译工具,时间码很容易被当成文字一起「翻译」坏。字幕翻译工具会识别每条字幕,只翻台词, 交回的文件编号和时间轴都不变。SRT 用 SRT 翻译器,VTT 用VTT 翻译器。前 30 行可以免费预览,导出时可以只要译文,也可以导出双语字幕。

常见问答

SRT 文件是什么?

SRT(SubRip Subtitle)是一种纯文本字幕格式。每条字幕是一个带编号的段落:起止时间(00:00:01,000 --> 00:00:04,000)加一两行文字,段落之间空一行。几乎所有播放器、剪辑软件和视频平台都能读取。

.vtt 文件是什么?

.vtt 是 WebVTT(Web Video Text Tracks)字幕文件,网页 HTML5 视频用的字幕格式。内容和 SRT 很像,但第一行必须是 WEBVTT,毫秒前用的是句点(00:00:01.000),还能写位置、对齐方式等设置。

SRT 和 VTT 有什么区别?

正文几乎一样。VTT 需要 WEBVTT 文件头,时间戳用句点而不是逗号,序号可有可无,还支持位置、样式和注释。SRT 更简单,桌面播放器和剪辑软件兼容性更好;VTT 是浏览器用的格式。两者互转几秒钟就能完成。

SRT 文件用什么打开?

只是看内容的话,用任何文本编辑器(Windows 记事本、Mac 的 TextEdit)打开即可。要配着视频看,就在 VLC 播放视频时把 .srt 拖进窗口,或者把它和视频放在同一文件夹并取相同的文件名(movie.mp4 和 movie.srt),播放器会自动加载。

怎么制作 SRT 文件?

在纯文本编辑器里按格式(序号、时间行、文字、空行)一条条写,保存为 .srt 后缀、UTF-8 编码即可。字幕多于几条时,用免费的 Subtitle Edit 等软件更方便,可以边看视频边打时间点。

SRT 字幕显示乱码怎么办?

文件保存时用的编码和播放器预期的不一样,常见于中文字幕存成了 GBK 等旧编码而不是 UTF-8。用能选择编码的文本编辑器打开,换到文字显示正常的那个编码,再另存为 UTF-8。

需要把字幕翻成另一种语言?

上传 SRT 或 VTT,选好语言,拿回来的文件时间码一个不变。

前 30 行免费预览。

SRT 文件是什么?SRT 和 VTT 的区别,以及怎么打开、制作、转换字幕文件 | SubtitleFlow