字幕格式和 HLS 支持
| 字幕来源 | 支持路径 | 会发生什么 |
|---|---|---|
| 本地 .vtt 文件 | 将WebVTT 文件拖到播放器中。 | 浏览器可以直接将其附加为字幕轨道。 |
| 本地 .srt 文件 | 将SRT 文件拖到播放器中。 | 播放器在添加曲目之前将其本地转换为WebVTT。 |
| HLSWebVTT轨道 | 如果清单宣传字幕,则正常播放流。 | 浏览器和播放器支持取决于清单和轨道元数据。 |
| .ass 或 .ssa 文件 | 加载前将其转换为 SRT 或 VTT。 | 此浏览器播放器不直接附加样式字幕格式。 |
| 烧录字幕 | 不需要额外的文件。 | 文本是视频像素的一部分,不能作为轨道进行切换。 |
如何向 M3U8 流添加字幕
- 1播放M3U8流粘贴 HLS URL 并按“播放”,以便在附加外部字幕文件之前加载视频。
- 2添加本地字幕文件将 .srt 或 .vtt 文件拖到视频区域,或使用播放器工具栏中的字幕控件。
- 3让 SRT 转换为 WebVTT如果文件为 SRT,则浏览器会将提示计时和文本转换为 WebVTT,因为本机 HTML 轨道需要 VTT。
- 4检查时间和语言开始播放并确认字幕与语音对齐。如果时间不对,请在编辑器中调整字幕文件并重新加载。
- 5仅使用代理进行流访问字幕是本地的,但如果 CORS 或 Referer 保护阻止播放,HLS 流可能仍需要代理。
为什么SRT需要在浏览器播放之前进行转换
HTML 视频轨道使用 WebVTT,而不是 SubRip SRT。播放器读取本地 SRT 文件,将时间戳和提示转换为浏览器中的 WebVTT blob,然后将该 blob 附加到视频元素。转换是本地的,不会将字幕文件发送到服务器。
当外部字幕比嵌入轨道更好时
当HLS流没有字幕轨道、嵌入语言错误或者您在发布之前对翻译字幕进行质量检查时,外部字幕非常有用。它们还允许编辑人员根据实时 HLS 播放路径(而不是本地 MP4 导出)检查字幕时序。
不出现字幕时应检查什么
确认文件扩展名是 .srt 或 .vtt、提示时间戳有效并且视频已开始。如果流本身被阻止,请首先使用 CORS 或 Referer 设置修复播放。字幕加载无法修复从未到达播放器的流。
相关播放和转换页面
- HLS流测试仪 在字幕 QA 开始之前检查流本身是否健康。
- M3U8 链接故障排除 涵盖可能导致字幕无法测试的播放失败。
- M3U8 至 MP4,无上传 解释了预览字幕后需要文件时的本地浏览器转换。
常见问题
我可以在线向 M3U8 流添加字幕吗?
是的。播放 M3U8 流,然后添加本地 .srt 或 .vtt 字幕文件。字幕是附加在浏览器中的,未上传。
播放器支持SRT字幕吗?
是的。 SRT 文件在本地转换为 WebVTT,因为浏览器通过 WebVTT 显示外部文本轨道。
我的字幕文件上传了吗?
不会。字幕文件由您的浏览器读取,根据需要进行转换,并作为本地文本轨道附加。它不会发送到服务器。
我可以使用 ASS 或 SSA 字幕吗?
不直接。首先将 ASS 或 SSA 字幕转换为 SRT 或 VTT,然后将转换后的文件加载到播放器中。
为什么字幕不同步?
字幕计时来自字幕文件。如果字幕早或晚,请在字幕编辑器中调整提示时间戳并重新加载更正的文件。