Skip to content

SSA 转 VTT 字幕转换器

把 SubStation Alpha 脚本转换为网页标准 WebVTT,用于在线视频播放器。

拖放您的 SSA 文件到这里

或点击浏览

支持最大 50 MB 的 .ssa 文件

转换引擎架构

为什么把 SSA 转为 VTT?

WebVTT 是 HTML5 视频文本轨道使用的字幕格式。如果你要在网站中嵌入视频或构建网页播放器,VTT 通常是更实用的选择。本工具读取 SSA 对话行,移除覆写标签,把厘秒计时转换为 VTT 点号分隔时间戳,并在文件前添加必需的 WEBVTT 头。

代码级语法透视

SSA 到 VTT 语法结构与代码转换示例

直观对比转换前后文件头、时间轴标记与对白文本的代码级语法对应关系

毫秒级同步
input.ssa
SSA 源格式
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:04.00,Default,,0,0,0,,Hello, world!
Dialogue: 0,0:00:04.50,0:00:08.00,Default,,0,0,0,,This is a subtitle file.
Dialogue: 0,0:00:08.50,0:00:12.00,Default,,0,0,0,,Converted locally!
output.vtt
VTT 转换结果
WEBVTT
 
00:00:01.000 --> 00:00:04.000
Hello, world!
 
00:00:04.500 --> 00:00:08.000
This is a subtitle file.
 
00:00:08.500 --> 00:00:12.000
Converted locally!
规范手册

SSA 与 VTT 格式规范深度解析

符合通用标准规范
输入格式

SSA

SSA

SSA(SubStation Alpha v4)是基于脚本的字幕格式,组织为 [Script Info]、[V4 Styles] 和 [Events] 分节,带有用于样式和定位的内联覆写标签。对话计时使用厘秒精度(H:MM:SS.cc)。本工具读取 UTF-8 输入,并可在需要时回退到 GB18030。

输出格式

VTT

VTT

VTT(WebVTT,Web Video Text Tracks)是用于 HTML5 视频文本轨道的 W3C 字幕格式。本工具写入 WEBVTT 头,随后是带点号分隔时间戳(00:00:15.200 --> 00:00:20.500)的字幕块。输出不添加可选字幕标识符或 cue 设置。

格式差异

SSA 使用 [Script Info]、[V4 Styles] 和 [Events] 分节;VTT 使用带可选 WEBVTT 头和顺序字幕块的扁平结构。
SSA 计时使用厘秒(0:00:15.20);VTT 使用点号分隔毫秒(00:00:15.200)和箭头分隔符(-->)。
SSA 支持逐字符样式的复杂内联覆写;本输出使用纯 VTT 字幕文本,不带内联 SSA 格式。
SSA 文件需要专用渲染器解释覆写块;VTT 文件由浏览器字幕引擎原生解析。
SSA 元数据位于 [Script Info];VTT 元数据可放在字幕前的 NOTE 块中。
SSA 文件通常在字幕编辑器中打开;VTT 文件由网页加载并在 HTML <track> 标签中引用。

常见疑难与故障排查

针对播放器兼容性、字符乱码与时间轴同步的实操排查指南

4 个常见问题
GOTCHA #1

转换后的字幕在电视或播放器上出现时间漂移或音画不同步?

不同视频流媒体可能采用不同帧率(如 23.976 fps 与 25 fps 差异)。如果时间轴整体偏移,可在本站使用「字幕时间轴同步」工具快速进行全局微调。

GOTCHA #2

字幕在播放器中显示为乱码(Mojibake)或问号?

老旧文件可能采用 GBK、ANSI 或 Shift-JIS 编码。本站输出文件统一标准化为 UTF-8 编码。若原文件损坏,请先使用本站「字符编码转换器」修复。

GOTCHA #3

多角色同时说话时字幕层叠或遮挡画面?

不同格式对多行或重叠台词的处理机制不同。您可以在本站在线工作台中微调特定字幕行的时间轴,避免文字垂直堆叠遮挡画面。

GOTCHA #4

文件在剪辑软件(如 Premiere Pro、Final Cut)中导入报错?

专业剪辑软件对时间戳格式及换行符敏感。本工具输出的文件严格遵循行业规范,以支持主流剪辑工作流。

功能特性

在输出前添加浏览器和网页播放器要求的 WEBVTT 头
把 SSA 厘秒计时(0:00:15.20)转换为 VTT 点号分隔计时(00:00:15.200)
移除定位、颜色、字体和卡拉OK等所有 SSA 覆写块
把 SSA 换行标记映射为每个字幕块内的 VTT 换行
写入不带可选标识符或设置的纯字幕块
检测并处理 SSA 源文件中的 CRLF 和 LF 行尾
输出 UTF-8 VTT,可被 Chrome、Firefox、Safari、Edge 和移动浏览器使用
完全在客户端处理,不向任何外部服务器上传文件

为什么需要转换?

HTML5 文本轨道使用 WebVTT,而 SSA 不是网页浏览器字幕格式。
许多网页视频播放器可通过 HTML5 track API 加载 VTT。
网页字幕工作流常以 VTT 作为文本轨道输入。
SSA 覆写标签不属于任何网页标准,浏览器字幕引擎无法渲染。
VTT 文件可以携带 cue 设置,但本工具的 SSA 转文本输出不会生成这些设置。
把 SSA 对话转换为 VTT 可得到供网页播放器引用的文本轨道。
Scenarios

常见用途

网页视频嵌入

把 SSA 对话转换为 VTT,用于使用文本轨道的 HTML5 视频实现。

YouTube 和 Vimeo 上传

把 SSA 对话转换为 VTT,用于当前仍接受 VTT 字幕上传的平台和工作流。

在线课程平台

把 SSA 字幕转换为 VTT,供使用 WebVTT 字幕的在线课程播放器使用。

自定义网页播放器

为支持 HTML5 track API 的自定义网页播放器创建 WebVTT 轨道。

WCAG 无障碍合规

作为整体无障碍视频实现的一部分,创建面向浏览器的字幕轨道。

Format Ecosystem

相关格式

工作原理

  1. 1

    拖入 .ssa 文件,或点击浏览选择文件。

  2. 2

    解析器定位 [Events] 分节并读取 Dialogue 行。

  3. 3

    识别并移除文本内容中大括号里的所有覆写块。

  4. 4

    Start 和 End 时间从 H:MM:SS.cc 厘秒格式转换为 HH:MM:SS.mmm VTT 格式。

  5. 5

    添加 WEBVTT 头,每条对话条目成为一个 VTT 字幕块。

  6. 6

    最终 VTT 文本以 UTF-8 编码,可供下载或直接在浏览器中预览。

常见问题

浏览器不包含 SSA 字幕解析器。HTML5 文本轨道使用 WebVTT,把 SSA 对话转换为 VTT 可为网页播放器提供面向浏览器的字幕轨道。

不会。VTT 支持 line、position、align 等基础字幕级设置,但不支持 {\pos(x,y)} 或 {\fs28} 这类 SSA 覆写标签。所有覆写块都会在转换中移除。如需更多样式控制,可考虑转换为 ASS。

支持标准 WebVTT 文本轨道的播放器通常可以加载输出。请查看播放器的 VTT 功能支持,并按需配置 track 元素。

会。每个 VTT 文件第一行都必须以 WEBVTT 开头;缺少该头时浏览器会拒绝文件。工具会自动把它添加到输出前。

SSA 使用 H:MM:SS.cc 厘秒精度;VTT 使用 HH:MM:SS.mmm 毫秒精度,并以点号分隔。工具把 SSA 厘秒乘以 10 得到 VTT 毫秒,例如 0:01:30.50 变为 00:01:30.500。

{\k}、{\kf}、{\ko} 等卡拉OK计时标签会在转换中移除。VTT 原生不支持卡拉OK效果;对话文本保留,但逐音节高亮计时丢失。如需卡拉OK,需要基于 JavaScript 的自定义渲染器。

准备好转换您的字幕了吗?

将您的 SSA 文件拖放到这里,立即转换为 VTT。