WebVTT字幕 (.vtt)

W3C 標準

Web Video Text Tracks (WebVTT) は、HTML5のビデオ要素(<track>)や現代のHTTPライブストリーミング(HLS)にネイティブ統合された、キャプション、字幕、チャプター記述のための公式なW3Cウェブ標準です。

SRT を VTT に変換

無料のブラウザ内 SRT から VTT へのコンバーター。お使いのデバイスでファイルを即座に変換します。

調査とメタデータ

オペレーティングシステムやファイル解析ツールは、先頭のバイナリバイトシーケンスを検査することで WebVTT ファイルを識別します:

ここにファイルを選択またはドロップ

100%プライベートなブラウザ内変換 - ファイルがデバイスから外部に出ることはありません

または貼り付け Ctrl+V
ネットワーク送信ゼロのプライバシー保証: 外部サーバーへのデータ送信は0バイトです。すべての処理はお使いのブラウザのサンドボックス内でローカルに実行されます。

バイトレベルのヘッダーシグネチャ (マジックバイト)

オペレーティングシステムやファイル解析ツールは、先頭のバイナリバイトシーケンスを検査することで WebVTT ファイルを識別します:

16進数シグネチャ (オフセット 0):

57 45 42 56 54 54

ASCII表現: WEBVTT

標準化: W3C WebVTT Recommendation

技術仕様

コンテナアーキテクチャUTF-8 text file starting with 'WEBVTT' signature, followed by optional STYLE and NOTE blocks and sequential cue blocks
圧縮Uncompressed plain text (typically compressed over HTTP via Gzip or Brotli)
バイトエンディアンUTF-8 text stream
色空間Full CSS Color Module Level 4 support in cue styles
チャンネルと構造Timecoded cues, speech recognition confidence, CSS styling, and screen position settings
最大寸法Unbounded sequential cues
透過性Full CSS opacity and alpha transparency supported via '::cue' pseudo-element
ストリーミングとプログレッシブNative streaming in HTML5 <video> elements and HLS / DASH live video manifests

技術比較マトリックス: WebVTT 対 競合製品

技術属性WebVTT (現在)SRTASSSUB
HTML5ウェブ統合100%ネイティブ標準 (<track>)JS変換が必要WebAssemblyが必要変換が必要
CSSスタイリング完全なネイティブCSSスタイリング (::cue)基本HTMLタグのみ独自のオーバーライドタグなし
HLS / DASH ストリーミングユニバーサルストリーミング放送標準多重化(Muxing)を介してサポート限定的なストリーミングサポートなし
ヘッダー要件厳格な「WEBVTT」マジックテキスト 1行目ヘッダー不要[Script Info]セクションヘッダー不要

一般的な破損モードと16進数リカバリガイド

ブラウザコンソールのエラー: 「不正なWebVTTファイル: WEBVTTシグネチャがありません」。

根本原因: 1行目に「WEBVTT」文字列がない、またはヘッダーの前に空行がある。

復旧: File2File字幕コンバーターを使用して、ファイルの先頭に「WEBVTT\n\n」を追加します。

セキュリティ分析とパーサー攻撃ベクトル

ウェブブラウザ内のWebVTTパーサーは、信頼されていないキューを処理します。これらは、DOMにサニタイズされずにレンダリングされた場合、クロスサイトスクリプティング(XSS)につながる可能性があります。

既知の攻撃ベクター

  • ウェブビデオプレイヤーのDOMに挿入されたサニタイズされていないHTMLキューコンテンツを介したXSSインジェクション。
  • 自動化されたサーバー側の字幕サムネイル生成中のサーバーサイドリクエストフォージェリ(SSRF)。
  • 不正なCSSキューセレクターを通じたサービス拒否(DoS)。

防御的ベストプラクティス:

歴史的背景とマイルストーン

2019W3Cは「WebVTT: The Web Video Text Tracks Format」を勧告候補(Proposed Recommendation)へ正式に進めました。
2011古典的なSubRipとは異なる明確なW3C標準を確立するため、WebSRTからWebVTTに名称が変更されました。
2010HTML5の<video>タグにおけるネイティブキャプションを解決するために、WHATWGがWebVTTを導入しました。

主な利点とメリット

  • ネイティブなHTML5ウェブ標準:外部ライブラリなしで、すべてのウェブブラウザの<track>要素で直接サポートされます。
  • 豊富なCSSスタイリングサポート:ネイティブの「::cue」CSS疑似要素を使用して、色、フォント、背景、位置をカスタマイズできます。
  • ファーストクラスのライブストリーミングサポート:放送用キャプション用のApple HLSおよびMPEG-DASHストリーミングマニフェストに統合されています。

技術的な制限とデメリット

  • 厳格なヘッダー要件:ファイルの最初の行に正確なテキスト「WEBVTT」が含まれていない場合、ブラウザによって拒否されます。
  • ピリオドミリ秒区切り(「00:01:20.500」)のため、レガシーなカンマ区切りのSRTファイルからの変換が必要です。
  • 古い非ブラウザハードウェアプレイヤー(安価なUSBメディアボックスなど)には、ネイティブのWebVTTサポートが欠けていることがよくあります。

興味深い技術トリビア

  • すべての有効なWebVTTファイルは、1行目に正確な単語「WEBVTT」で始まる必要があります。それ以外のものがあると、ブラウザはファイルを無視します。
  • WebVTTは、古典的なSRT字幕とほぼ同じように見えるように意図的に設計されていたため、もともと「WebSRT」と呼ばれていました。
  • WebVTTは、ビデオスクラバーバーにカーソルを合わせた際のビデオチャプターやインタラクティブなサムネイルツールチップにも使用できます。

よくある技術的な質問

WebVTT は何に使用されますか?

WebVTT は、Webサイト上の HTML5 の <video> 要素に字幕、キャプション、チャプター、説明を追加するための公式のWeb標準フォーマットです。

SRT 字幕を WebVTT に変換するにはどうすればよいですか?

ブラウザ上で直接 File2File.app を使用し、1クリックで SRT ファイルをクリーンな WebVTT ファイルに変換できます。

WebVTT 字幕がブラウザに表示されないのはなぜですか?

ファイルが1行目に「WEBVTT」で始まり、その後に空行があり、Webサーバーが「Content-Type: text/vtt」ヘッダー付きで配信していることを確認してください。