JSON3 vs VTT:YouTube字幕とWebVTT形式の比較
JSON3とVTTの構造、時間精度、ブラウザ対応、使用例を比較。YouTube字幕をWeb動画に使う無料JSON3 to VTTツールを紹介します。
JSON3とVTTはどちらも現代的な字幕形式ですが、支えるエコシステムが大きく異なります。JSON3は構造化JSONと単語単位の時間を持つYouTube内部形式です。VTT(WebVTT)はHTML5動画向けに設計されたW3C標準で、ブラウザのネイティブ対応と豊富なスタイル機能を備えています。YouTube字幕を自作のWeb動画プレイヤーで使うには、JSON3からVTTへの変換が不可欠です。
JSON3とVTTの早見表
| 項目 | JSON3(YouTube) | VTT(WebVTT) |
|---|---|---|
| 拡張子 | .json3 または .json | .vtt |
| 形式の種類 | 構造化JSONオブジェクト | WEBVTTヘッダー付きプレーンテキスト |
| タイムスタンプ | 整数のミリ秒(tStartMs) | ピリオド区切りのHH:MM:SS.mmm |
| 単語単位の時間 | 対応(tOffsetMs) | 非対応。キュー単位のみ |
| スタイル | JSONメタデータとヒント | 位置、行揃え、CSSスタイルに対応 |
| 必須ヘッダー | 有効なJSON構造 | あり(1行目にWEBVTT) |
| ブラウザ対応 | なし(YouTube内部のみ) | 優秀(HTML5ネイティブ) |
| W3C標準 | 非対応 | 対応 |
| 主な用途 | YouTube内部の字幕配信 | HTML5 Web動画字幕 |
主な違いの解説
構造とWeb互換性
JSON3はevents配列を持つ構造化JSONとして字幕を保存するため、プログラムで解析する必要があります。VTTはWEBVTTヘッダーで始まるプレーンテキストで、ピリオド区切りのタイムスタンプ行を使います。VTTはHTML5のtrack要素から直接利用できる一方、JSON3はYouTube以外のブラウザ機能で利用できません。
スタイルと位置指定
JSON3のスタイルヒントはYouTube専用のJSONメタデータで、移植性がありません。VTTは行位置と行揃えのキューセッティング、styleブロックによるCSS、クラスによるスタイル指定という明確な仕組みを持ちます。Web動画の字幕デザイン制御ではVTTがはるかに柔軟です。
時間精度
両形式ともミリ秒精度に対応します。JSON3はさらに単語単位の時間(tOffsetMs)を持てますが、VTTにはネイティブの等価機能がありません。変換時には単語単位の時間がキュー単位の開始・終了時刻へ集約されます。
JSON3を使う場面
JSON3が意味を持つのはYouTubeから字幕を取り出すときです。単語単位オフセットを含む最大限のタイミング忠実度を保持できるため、VTTなどWeb互換形式へ変換する前の中間形式として使います。
VTTを使う場面
Web動画アプリケーションではVTTを選んでください。ネイティブのブラウザ対応、豊富なスタイル、W3C標準という強みがあります。YouTube字幕を自作プレイヤーで再利用するなら、JSON3からVTTへの変換が最適な経路です。
よくある質問
JSON3はHTML5動画で直接使えますか?
使えません。HTML5動画はtrack要素でVTTのみを標準サポートします。Web動画で利用する前にJSON3からVTTへ変換してください。
VTTはJSON3のような単語単位の時間に対応しますか?
対応しません。VTTの時間はキューの開始と終了のみです。JSON3のtOffsetMsは変換時にキュー単位の時間へ集約されます。
VTTはJSON3より優れていますか?
Web動画ではVTTが明確に有利です。ブラウザネイティブ対応とW3C標準化があるためです。JSON3はYouTubeの時間データを保存する中間形式としてのみ優位性があります。