MicroDVD字幕 (.sub)
MicroDVD 标准MicroDVD 字幕(SUB)是一种传统的基于帧的字幕格式,它使用准确的视频帧号而不是绝对的时钟时间戳来同步对话提示。
将 SUB 转换为 SRT
免费的浏览器端 SUB 转 SRT 转换器。在您的设备上即时转换文件。
检查与元数据
操作系统和文件分析器通过检查开头的二进制字节序列来识别 SUB 文件:
字节级文件头签名 (Magic Bytes)
操作系统和文件分析器通过检查开头的二进制字节序列来识别 SUB 文件:
十六进制签名 (偏移量 0):
7B 31 7D 7B / 7B 30 7D 7BASCII 表示形式: {1}{ / {0}{
标准化: MicroDVD File Specification
技术规格
| 容器架构 | Frame-based text format where each line defines {start_frame}{end_frame} followed by subtitle text |
| 压缩方式 | Uncompressed plain text |
| 字节序 | UTF-8 or ANSI text stream |
| 色彩空间 | Optional MicroDVD control codes ({y:b}, {y:i}, {c:$BBGGRR}) |
| 通道与结构 | Frame-synchronized subtitle text with basic formatting |
| 最大尺寸 | Unbounded sequential lines |
| 透明度 | None |
| 流式传输与渐进式加载 | Sequential frame-by-frame streaming playback |
技术对比矩阵:SUB 对比同类产品
| 技术属性 | SUB (当前) | SRT | VTT | ASS |
|---|---|---|---|---|
| 计时机制 | 帧号 ({start_frame}{end_frame}) | 时间码 (HH:MM:SS,mmm) | 时间码 (HH:MM:SS.mmm) | 时间码 (H:MM:SS.cc) |
| 帧率依赖性 | 100% 依赖于准确的视频 FPS | 独立于视频帧率 | 独立于视频帧率 | 独立于视频帧率 |
| 现代网页支持 | 无(需要转换) | 需要 JS 转换 | 原生 HTML5 <track> | 需要 WebAssembly |
| 当前用途 | 传统 DivX/XviD 归档 | 全球通用标准 | 现代网页视频标准 | 动漫与风格化字幕 |
常见损坏模式与十六进制恢复指南
字幕播放速度比电影音频快两倍或慢两倍。
根本原因: 帧率不匹配(例如为 29.97 fps 视频计时制作的字幕与 23.976 fps 的文件一起播放)。
恢复方法: 使用 File2File 字幕转换器转换为具有正确 FPS 的基于时间戳的 SRT。
安全分析与解析器攻击向量
MicroDVD 解析器会评估帧计算数学,其中整数溢出可能会导致缓冲区内存损坏。
已知攻击向量
- 帧到毫秒时间戳转换过程中的整数溢出。
- 解析未闭合的花括号标签时的缓冲区超读。
- 通过负数或降序帧号序列进行拒绝服务攻击。
防御性最佳实践:
历史渊源与里程碑
核心优势与特点
- 保证了与视频刷新周期直接绑定的精确帧级字幕定时。
- 极其紧凑的语法:每条提示恰好占据一行文本(例如 '{100}{250}Hello world')。
- 受到主流传统桌面媒体播放器(VLC、MPC、GOM Player)的支持。
技术局限与劣势
- 依赖帧率:如果视频帧率发生变化(例如从 23.976 fps 变为 25 fps),所有字幕将立即失去同步。
- 模糊的文件扩展名:'.sub' 也用于二进制的 VobSub DVD 位图图形。
- 现代网页浏览器或流媒体平台原生不支持。
趣味技术冷知识
- MicroDVD SUB 文件中的每一行都以包含帧号的花括号开头:'{1200}{1280}Watch out!'。
- 如果 SUB 文件未在第 1 行声明视频帧率,现代媒体播放器必须猜测帧率(通常会导致同步错误)。
- 该格式专为经典的 MicroDVD Player 创建,该播放器允许在 Windows 98 上使用自定义皮肤。
常见技术问题
为什么我的 .sub 字幕与视频不同步?
因为 .sub 文件使用的是帧号而不是实际时间。如果您的视频播放帧率(例如 24 fps 对比 30 fps)与制作字幕时的帧率不同,字幕就会逐渐不同步。
如何将 .sub 转换为 .srt?
您可以直接在网络浏览器中使用 File2File.app,一键将基于帧的 .sub 文件转换为通用的、带时间码的 .srt 字幕。
文本 .sub 和 VobSub .sub 有什么区别?
文本 .sub (MicroDVD) 是带有花括号的纯文本文件。VobSub .sub 是包含直接从 DVD 提取的原始图形图像的二进制文件,并与 .idx 索引文件配对。