ファンサブ字幕ワークフロー総合ガイド:弾幕・ASS・SRT・WebVTT
ファンサブ・アニメ字幕パイプラインの実用ワークフローガイド。Bilibili 弾幕の ASS 変換、ASS/SRT/WebVTT 間の相互変換、フレームレート差の再同期を扱います。
ファンサブのワークフローでは、存在するすべての字幕形式を扱うことになります。素材は Bilibili の弾幕 XML、作業ファイルは Aegisub の ASS、配信向け納品は SRT や WebVTT、そして動画自体も 23.976・24・25・29.97 fps のあいだを行き来します。このハブにあるツールは、Aegisub やデスクトップ字幕ソフトを入れなくても、その各受け渡しを処理できるよう用意してあります。
本ガイドはそのワークフロー全体の見取り図です。どのツールがどの工程を担当し、どの変換で情報が落ち、再エンコードされた動画に字幕がずれたときにオフセットと FPS 変換をどう組み合わせるか、順番に確認できます。
起点:弾幕をスタイル付き字幕ファイルへ変換する
素材が Bilibili の XML 弾幕エクスポートであれば、まず衝突回避付きで本物の字幕形式へ変換するのが最初の仕事です。弾幕 XML は独自形式で、標準的なプレイヤーではレンダリングできません。スクロールコメントに必要な位置指定とモーション制御をサポートする ASS が、中間形式として最適です。他の編集に入る前に変換しておきます。
このセクションで使うツール
配信先に応じて ASS と SRT を切り替える
ASS はスタイル情報を完全に保持できますが、配信先の大半(YouTube・ポッドキャスト系・汎用プレイヤー)は SRT しか受け付けません。納品用には ASS から SRT へ変換し、編集用マスターとして元の .ass を残します。翻訳者から SRT で原稿が届いて Aegisub でスタイルを当てたい場合は逆方向、SRT → ASS で V4+ スタイルブロックと Dialogue イベントを生成します。
このセクションで使うツール
HTML5 video に埋め込むなら WebVTT へ
ブラウザの <track> 要素は WebVTT しか読み込みません。同じファンサブ作品をダウンロード用 SRT とウェブプレビュー用の両方で配信する場合、両方のファイルが必要になります。SRT → VTT はカンマ小数点をピリオドにし、WEBVTT ヘッダを加えるのが中心です。逆方向では SRT が解釈できない話者タグや cue settings が取り除かれます。
このセクションで使うツール
別ソースに合わせてタイミングを再同期する
23.976 fps の Blu-ray 用に作られた字幕を 25 fps の PAL 版で再生すると、再生時間が進むほど字幕は遅れていきます。一定オフセットだけでは最初の 1 行しか合いません。すべてのタイムコードを FPS 比率で再スケーリングする必要があります。タイミング調整ツールは、ミリ秒オフセットと FPS 変換を 1 パスでまとめて適用し、二段階処理による丸め誤差を防ぎます。23.976 ↔ 25、29.97 ↔ 23.976 などのプリセットで、よくある再同期作業を即座にこなせます。
このセクションで使うツール
推奨順序:弾幕 → ASS → タイミング → 最終形式
もっとも表現力の高い形式で作業し、最後に絞り込むのが基本です。推奨順序は、まず弾幕を ASS へ変換し、スタイリングと編集はすべて ASS 上で行い、タイミング補正も ASS のままで実施し(精度を失わずに済みます)、SRT や VTT への変換は出力先が確定した最後の段階で行う、という流れです。順序を逆にすると、後から復元できないスタイル情報を失います。
弾幕(XML) ASS変換ツール
BilibiliなどのXML形式の弾幕(コメント)を高品質なASS字幕に変換。PotplayerやIINA、VLCなどで、重なりのないスムーズな弾幕再生を実現します。
ASS ⇔ SRT 字幕変換ツール
Advanced SubStation Alpha(.ass)と SubRip(.srt)字幕ファイルをブラウザ内で相互変換。スタイルタグを除去しタイムコードを維持します。
字幕タイミング調整・FPS 変換ツール
SRT・ASS・WebVTT 字幕のタイムコードをミリ秒単位でずらし、23.976 ↔ 25fps などのフレームレート変換と組み合わせて再同期します。
WebVTT ⇔ SRT 変換ツール
WebVTT(.vtt)と SubRip(.srt)字幕ファイルをブラウザ内で相互変換。VTT のキュー設定、話者タグ、インラインスタイルを自動除去します。