ToolConvoyToolConvoyv2.6
MISC

VTT 转 SRT — 在浏览器中将 WebVTT 字幕转为 SRT 格式

将 WebVTT 字幕文件转换为 SRT 格式。保留 cue 时间,去除 WebVTT 元数据头部并统一行尾格式。完全在客户端运行。

● 本地运行 · 仅在浏览器中页面加载以来工具发出的网络请求:0 次

VTT to SRT

Convert WebVTT subtitle files to SRT format. Works entirely in your browser — no uploads, no limits.

WebVTT 和 SRT 是 Web 上两种主流的字幕格式,它们代表了两种不同的设计哲学。WebVTT 为浏览器时代而生——支持 CSS 样式、带时间戳的元数据、用于在屏幕上定位字幕的 cue 区域,以及可承载任意元数据的头部块。SRT 则是诞生于桌面视频时代的老而简单的格式——一个带时间戳的纯文本条目列表,没有样式、没有定位、没有 cue 时间之外的任何元数据。从 VTT 到 SRT 的转换是一次简化:WebVTT 在定时文本之上添加的所有东西都会被去除,只有纯文本 cue 和它们的时间得以保留。

对于简单的字幕文件——一条 cue 一句对白、标准时间戳、没有重叠条目——转换过程很直接。复杂之处来自 SRT 无法表达的特性。WebVTT 允许两条 cue 重叠(说话人被插话,第二位说话人的文本在第一位说话人还在显示时出现),但 SRT 要求每条 cue 必须在下一条开始前结束。WebVTT 允许用 <b>bold</b><i>italic</i> span 来表达强调或说话人归属,但 SRT 是纯文本。WebVTT 允许把 cue 定位在屏幕的特定区域,但 SRT 没有空间模型。每一处差异都意味着转换中的信息丢失,而这种丢失是目标格式本身决定的。

最后做个交接说明:如果 SRT 的时间在播放过程中发生漂移,使用本站的 Subtitle Shift 工具把所有时间戳整体向前或向后平移一个固定偏移量。如果目标是视频托管平台(YouTube、Vimeo),SRT 是支持最广的上传格式。如果你想找回样式,可以把这个 SRT 用 SRT-to-ASS 工具转成 ASS(Advanced SubStation Alpha)—— ASS 支持 SRT 没有的字体、颜色和精确定位。

广告

使用方法

  1. 载入 VTT 文件

    把 .vtt 文件拖入拖放区,或直接粘贴 VTT 内容。解析器会读取 WebVTT 头部块,去除样式块和元数据注释,并提取每条 cue 的时间和文本。

  2. 查看转换后的 SRT

    每条 cue 按顺序从 1 开始编号。时间戳会从 `00:01:23.456` 重新格式化为 `00:01:23,456`(逗号分隔符,符合 SRT 规范)。多行 cue 文本的换行会被保留。

  3. 下载 SRT 文件

    将转换结果下载为 .srt 文件,使用 UTF-8 编码和 CRLF 行尾格式。输出兼容 VLC、YouTube、Netflix 以及所有支持 SRT 的主流视频播放器。

常见问题

WebVTT 的样式和定位 cue 会怎样处理?

WebVTT 支持类 CSS 的内联 span(`<b>`、`<i>`、`<c.red>`)、cue 区域和文本对齐。SRT 没有任何样式标记。转换器会去除所有类似 HTML 的标签和定位元数据,只保留纯文本。如果样式承载了语义(比如用颜色区分说话人),这些信息会丢失。

重叠的 cue 会在 SRT 输出中保留吗?

WebVTT 允许 cue 重叠(同一时间显示两条 cue)。SRT 不允许——每条 cue 必须在前一条结束之后才开始。重叠的 cue 会被拆分成顺序排列的多条 SRT 条目,这可能改变字幕的显示顺序。

输出的 SRT 使用什么字符编码?

UTF-8 无 BOM。标准 SRT 严格来说是 ANSI,但因为所有现代视频播放器都支持 UTF-8,它已成为字幕文件的事实标准。如果目标播放器要求特定的旧编码,请使用文本编码工具重新编码该文件。

转换器能处理 WebVTT 的元数据头部吗?

可以。WebVTT 头部(`WEBVTT`、可选的头部行和类 CSS 样式块)会被去除,只有 cue 块会进入 SRT 输出。

限制说明

  • 样式信息始终会丢失VTT 中通过 CSS 类、内联 span 或定位元数据应用的任何格式都会被丢弃,因为 SRT 是不支持样式的纯文本格式。
  • 不支持 WebVTT 区域WebVTT 区域(用于定位字幕的画布分区)在 SRT 中没有对应概念。分配到区域的 cue 会被放入顺序排列的 SRT 输出中,时间被保留,但屏幕位置丢失。
  • 微秒精度会被截断WebVTT 时间戳可以支持微秒精度,但 SRT 只能精确到毫秒。第三位小数会按四舍五入进到毫秒。

平台说明

macOS
Safari 原生视频播放器支持 WebVTT,但 SRT 需要 VLC 或 IINA 这类第三方播放器。本转换工具适用于为偏好 SRT 的播放器准备字幕。
Linux
FFmpeg 可以通过 `ffmpeg -i input.vtt output.srt` 把 VTT 转成 SRT,但同时也会对任何内嵌的视频流进行转码。当你只有独立 VTT 而没有视频容器时,浏览器工具是更合适的选择。
Web
完全在客户端运行。对于任何实际尺寸(小于 10 MB)的字幕文件,转换都是瞬间完成。
广告

相关工具

广告