Fansub 字幕工作流总览:弹幕、ASS、SRT、WebVTT
面向 fansub 与动画字幕流程的实用工作流指南,涵盖 B 站弹幕转 ASS、ASS/SRT/WebVTT 互转、跨帧率重新同步等场景。
Fansub 工作流几乎涉及所有字幕格式。素材可能是 Bilibili 的弹幕 XML,工作文件通常是 Aegisub 的 ASS,最终交付给流媒体的多为 SRT 或 WebVTT,而视频本身又会在 23.976、24、25、29.97 fps 之间切换。本中心收录的工具,无需安装 Aegisub 或桌面字幕套件,就能处理这些环节之间的衔接。
这篇指南就是整条流程的导览:哪一步用哪种工具,哪一次转换会丢信息,以及当字幕在重新编码的视频上漂移时,如何把毫秒级偏移和 FPS 换算结合起来。
起点:把弹幕转成带样式的字幕文件
如果素材是 B 站导出的 XML 弹幕,第一步就是把它转成具备防碰撞机制的真正字幕格式。弹幕 XML 是自定义结构,没有任何标准播放器能直接渲染。ASS 是最合适的中间格式,它支持滚动弹幕所需的精确位置和位移控制。请在任何编辑工作之前先完成这一步。
根据交付目标在 ASS 与 SRT 之间切换
ASS 保留完整样式信息,但绝大多数上传目标(YouTube、播客平台、通用播放器)只接受 SRT。交付时把 ASS 转成 SRT,同时保留原始 .ass 作为可编辑母版。如果译者交来的是 SRT,而你需要在 Aegisub 中加样式,则走反向:SRT → ASS,生成真正的 V4+ 样式块和 Dialogue 事件。
需要嵌入 HTML5 video 时转换为 WebVTT
浏览器的 <track> 元素只读取 WebVTT。如果同一份 fansub 作品既要提供 SRT 下载,又要提供网页预览版,就必须同时具备两种文件。SRT → VTT 的核心是把逗号小数点换成句点并加上 WEBVTT 头。反方向时会自动剥离 SRT 无法解读的说话人标签和 cue settings。
本节相关工具
更换片源后重新同步时间轴
针对 23.976 fps Blu-ray 制作的字幕,放到 25 fps 的 PAL 重制版上时会越拖越后。仅靠固定偏移只能对齐第一行,必须把所有时间码按 FPS 比例重新缩放。时间轴工具会把毫秒偏移和 FPS 换算合并成一次处理,避免分两步带来的双重舍入误差。23.976 ↔ 25、29.97 ↔ 23.976 等预设可以覆盖最常见的重新同步需求。
推荐顺序:弹幕 → ASS → 时间轴 → 最终格式
在保留信息最多的格式中完成作业,最后再收敛。推荐流程是:先把弹幕转 ASS;所有样式与编辑工作都在 ASS 中完成;时间轴校正也在 ASS 中处理(不损失精度);只有在确认最终输出格式之后,才转成 SRT 或 VTT。一旦顺序颠倒,就会丢掉之后无法恢复的样式信息。
Danmaku(XML) to ASS Converter
High-performance XML to ASS subtitle converter. Transform Bilibili/AcFun danmaku into high-quality, collision-free subtitles for Potplayer, IINA, VLC, and Movist.
ASS to SRT Subtitle Converter
Convert between Advanced SubStation Alpha (.ass) and SubRip (.srt) subtitle files entirely in your browser. Strips styling tags, preserves timing, handles multi-line cues.
Subtitle Timing Shifter & FPS Converter
Offset and re-scale SRT, ASS, or WebVTT subtitle timing. Combine a millisecond shift with an FPS conversion (23.976 ↔ 25 etc.) to re-sync subs to a different video source.
WebVTT to SRT Converter
Bidirectional WebVTT (.vtt) and SubRip (.srt) subtitle converter. Strips VTT cue settings, speaker tags, and inline styling. Runs entirely in your browser.