メインコンテンツへスキップ
SubtitleMatrix

VTT 字幕フォーマット

形式変換WebVTT(VTT)

この形式が表現できること

テキストのスタイル
太字と斜体
画面内の位置指定
非対応
カラオケのタイミング
非対応
字幕ブロック内の改行
対応
タイムライン
各字幕の開始と終了の時刻
タイミングの精度
1 ms
フレーム番号で保存されるタイミング
非対応
右から左に書く言語
対応

例

典型的な VTT ファイルと、そこから読み取れる内容

ファイル

WEBVTT

intro
00:00:01.000 --> 00:00:04.000
Hello there.

00:00:04.500 --> 00:00:08.000 align:start position:10%
Second line with <i>italics</i>.

ファイルの中身

2 cues, 2 lines of text

  00:00:01.000 → 00:00:04.000
    Hello there.
  00:00:04.500 → 00:00:08.000
    Second line with italics.   [italic ×1]
    [settings align:start position:10%]

Outside the cues:
  header     "WEBVTT"

右側は変換後のファイルではなく、このサイトが左側から読み取った内容です。どの変換も、この読み取り結果から出発します。

崩れた VTT ファイルと、それでも読み取れる内容

ファイル

WEBVTT - boundary sample

NOTE a comment
spanning two lines

STYLE
::cue { color: red }

REGION
id:fred
width:40%

00:01.000 --> 00:03.000
Hours-less timecode with <b>bold</b> and <v Roger>a voice tag.

00:05.000 --> 00:04.000
End before start.

NOTE between cues

00:07.000 --> 00:09.000
&nbsp; entities stay literal.

00:10.000 --> oops
Unreadable end time.

NOTE trailing

ファイルの中身

3 cues, 3 lines of text

  00:00:01.000 → 00:00:03.000
    Hours-less timecode with bold and <v Roger>a voice tag.   [bold ×1]
  00:00:05.000 → 00:00:05.001
    End before start.
  00:00:07.000 → 00:00:09.000
    &nbsp; entities stay literal.

Outside the cues:
  header     "WEBVTT - boundary sample"
  blocks     NOTE ×3, STYLE, REGION

Reported while reading — repaired or skipped, never silently:
  1 × blocks that were neither a cue nor a NOTE/STYLE/REGION block (they were skipped)
  1 × cues whose end time was not after their start time (they were given a 1ms duration)

実ファイルには BOM、Windows の改行、タイムスタンプの前の余分な行、欠けたヘッダーが付いてきます。どれも例外にはせず、理解できない部分は黙って捨てずに報告します。

WebVTT (VTT) を他の形式に変換

いずれもブラウザ内で完結します。ラベルには、その方向で何が失われるかが開く前に示されています。

この形式への変換

WebVTT(VTT)は、このサイトが扱う字幕形式のひとつです。このページはその形式のリファレンスで、何を保存できて何を保存できないか、そして変換先ごとのページをまとめています。

上の対応表がすべてで、隠れた機能一覧はありません。×の行は、その形式から VTT に変換したときに失われるものそのものです。下に並ぶ各変換ページでは、ファイルを開く前に同じ内容を明示しています。

どの変換もブラウザ内で実行されます。アップロードもアカウント登録も不要なので、NDA の下にある素材、カルテ、放送前の映像でもそのまま扱えます。

よくある質問

VTT ファイルとはどんな形式ですか?

Web の字幕形式です。HTML5 の <track> 要素が直接読み込むため、ブラウザ、配信プレーヤー、多くの現代のプラットフォームが期待する形です。SRT が持つものに加えて、ヘッダー、任意のコメント、字幕ごとの設定を持ちます。

VTT はスタイルを保存できますか?

少しだけ、しかもテキストの外ではなく中に保存します。強調と色は字幕の一部で、<b>、<i>、<u>、<font color="…"> として書かれます。フォントサイズ、縁取り、余白を宣言する場所はなく、表示するページ側が決めます。字幕の上に STYLE ブロックとして CSS 規則を置くこともでき、あるファイルはそのまま保持します。

VTT の各字幕は開始と終了の両方を持ちますか?

はい。VTT の時刻は 00:00:04.126 のように書かれ、ミリ秒まで表現できます。値は正確なので、短い字幕も長い字幕も、次の字幕と重なる字幕もそのまま扱えます。

VTT はどの形式に変換するのがよいですか?

このサイトのどの形式も VTT のすべてを引き継げないため、無料の方向はありません。各変換ページがそれぞれの損失一覧を出します。よく見る形式かどうかではなく、どの損失なら受け入れられるかで選んでください。

VTT ファイルは字幕の外に何を保存しますか?

ヘッダー行と、任意でコメント(NOTE)、スタイルブロック(STYLE)、領域定義(REGION)、字幕ごとの設定(align、position、line)を保存します。それらを持たない形式へ変換すると失われ、各ページがそう明示します。