ブログ
SRTファイルとは?SRTとVTTの違いをわかりやすく解説
著者: Hushscript 公開日: 最終確認日:
SRTファイルは、番号付きのキューが並んだプレーンテキストの字幕ファイルです。各キューには、開始時刻と終了時刻、そして1〜2行の字幕テキストが入っています。VTTファイルは、同じ種類の時間情報付きテキストをWebVTT形式で収めたもので、HTML5のvideo要素がそのまま読み込めます。「SRTとVTTの違い」が気になるのは、たいてい、読み込めるはずの場所で字幕ファイルが読み込めなかったときです。米国議会図書館はSubRipのSRTの構造を記録していて、W3CはWebメディア向けにWebVTTを定義しています。Hushscriptの字幕ジェネレーターはどちらも書き出せるので、選ぶ基準は文字起こしの精度ではなく、使う場所です。
要点
- 基本はSRTを使ってください。ほぼすべてのプレーヤーと編集ソフトで開けます。
- ウェブページのHTML5動画プレーヤーに字幕を埋め込むときはVTTを使います。
- VTTは、キューの表示位置と基本的なスタイル指定に対応します。SRTには標準のスタイル指定がありません。
- ブラウザ標準のtrack要素はVTTを読み込みます。
- VLC、Premiere Pro、DaVinci ResolveはSRTに対応しています。
SRTファイルとは?
SRTファイル(.srt、SubRip Textの略)は、字幕の形式の中でも特にシンプルなものです。SRT形式は、連番、ミリ秒の前にカンマを置いた時間範囲(00:00:01,000 --> 00:00:04,000)、字幕テキストが1つのブロックで、ブロックの間は空行で区切ります。ヘッダーもメタデータもなく、字幕そのものしか入っていません。このシンプルさのおかげで、SRTファイルはほとんどどんなソフトでも開けます。実際のところ、SRTファイルの意味はこれに尽きます。時間情報付きの字幕を並べただけのプレーンテキストです。プレーヤーが読み違える余地はほとんどありません。
1
00:00:01,000 --> 00:00:04,000
番組へようこそ。
2
00:00:04,500 --> 00:00:07,200
今日は字幕についてお話しします。
VTTファイルとは?
VTTファイル(.vtt)は、WebVTT形式の字幕ファイルです。VTT形式では先頭にヘッダー行が必須で、ファイルはWEBVTTで始まらなければ無効になり、タイムスタンプにはカンマではなくピリオドを使います(00:00:01.000 --> 00:00:04.000)。それ以外にも、画面上のテキストの位置を決めるキュー設定、配置、字幕テキスト内の基本的なスタイル用マークアップなど、SRTには入れる場所のない機能に対応しています。VTTは、HTML5の動画標準にある字幕トラック要素が、そのまま読み込むことを前提にしている形式です。一部のサイトが好みで選んだものではなく、土台となるWeb技術がそう作られているのです。VTTファイルもプレーンテキストで、字幕の分野でいう「VTT」は、WebVTTの略称です。
WEBVTT
00:00:01.000 --> 00:00:04.000
番組へようこそ。
00:00:04.500 --> 00:00:07.200
今日は字幕についてお話しします。
SRTとVTTの比較
| SRT | VTT | |
|---|---|---|
| 拡張子 | .srt |
.vtt |
| 正式名称 | SubRip Text | WebVTT |
| ヘッダーの要否 | 不要 | 必要。ファイルはWEBVTTで始まる |
| タイムスタンプの区切り | カンマ(,) |
ピリオド(.) |
| スタイルや位置指定 | なし | キュー設定、基本的なマークアップ |
| 想定する用途 | 一般的な再生と編集 | HTML5のWeb埋め込み |
SRTとVTTの違いは?
通常の字幕なら、違いはほとんどありません。どちらも同じタイミングとテキストを持っています。SRTとVTTの違いは入れ物の形式で、VTTはWEBVTTのヘッダーが必要で、タイムスタンプのカンマがピリオドになり、SRTでは保存できないキュー設定を使えます。実際に気にすべきは、使う場所がどちらを受け付けるかで、次の見出しで説明します。
それぞれが実際に求められる場所
SRTは、安全で汎用的な選択肢です。VLCのようなパソコンやスマートフォンのプレーヤー、Premiere ProやDaVinci Resolveのような動画編集ソフト、そして他の人に渡すほとんどの場面で、SRTが求められるか、問題なく受け付けられます。VTTは、Webページのvideo要素に字幕を埋め込む場合に特化したものです。ブラウザーのネイティブなHTML5の<track>要素にSRTファイルを指定しても、何も表示されません。同じ要素がVTTをそのまま読めるので、Webへの埋め込みにはVTTが求められます。SRTも受け付けるWebプレーヤーもありますが、VTTはその用途のために作られた形式です。字幕ファイルの行き先がまだ決まっていない場合は、SRTのほうが無難です。Webへの埋め込みに使うと分かった時点で、いつでもVTTに変換できます。
スタイル:VTTにあってSRTにできないこと
SRTは、連番とタイムスタンプとプレーンテキストだけなので、標準のスタイル指定がありません。位置の指定も、CSS形式の書式設定もできません。<b>や<i>のような基本的なタグ、場合によっては<font>は、多くのプレーヤーが対応していますが、対応状況はプレーヤーによって異なります。VTTのキュー設定は、同じ時間情報の構造の上に、基本的な位置指定と簡単なマークアップを加えます。ただ、どちらも、フォント、色、画面上の配置のために作られた、スタイル付き字幕専用の形式ほどは細かく制御できません。そこまでの制御が必要な作業では、SRTやVTTより一段上の、別の形式を使うことになります。実際には、ほとんどの編集ソフトや汎用プレーヤーはVTTの追加のスタイル指定を無視して、タイミングとテキストだけを読み込みます。そのため、この差が問題になるのは主にブラウザーでの再生で、編集ソフトとの通常のやり取りではあまり関係しません。
SRTファイルやVTTファイルの開き方
どちらの形式もプレーンテキストなので、どのテキストエディターでも開けて、キューが書かれたとおりに表示されます。字幕として見るには、動画プレーヤーや編集ソフトで、動画と並べてファイルを読み込みます。VLCをはじめ、ほとんどのパソコン用プレーヤーは、動画と同じ名前で同じフォルダーにあるSRTを自動で読み込みます。Webページでは、<track>要素にVTTファイルを指定します。字幕ファイルが読み込めないときは、まず基本を確認してください。拡張子が正しいか、VTTファイルにWEBVTTのヘッダーがあるか、SRTのタイムスタンプがカンマになっているかです。
SRTからVTT、VTTからSRTへ無料で変換する
手元にSRTがあって、Webへの埋め込み用にVTTが必要な場合や、その逆の場合は、ブラウザー上で動く無料のSRTをVTTに変換するツールで、そのまま相互に変換できます。ファイルをドロップして、出力形式を選び、ダウンロードするだけです。アカウントは不要で、サーバーには何もアップロードされません。お持ちのファイルがASS、TTML、SBVの形式なら、より幅広い形式に対応した字幕コンバーターで、同じツールのまま変換できます。
実際の例
あるクリエイターが、録画した動画からHushscriptの字幕ジェネレーターでSRTの字幕を書き出しました。SNSのプラットフォームで使う予定です。作業の途中で、同じエピソードを自分のWebサイトにも、HTML5のネイティブ埋め込みとして載せることになりました。そのプレーヤーが読めるのはVTTだけです。文字起こしをやり直す代わりに、SRTファイルを無料のコンバーターに通すと、数秒でVTTになって戻ってきます。タイミングもテキストもそのままで、埋め込みの準備が整います。1つの文字起こしから2つの字幕ファイルができ、2回目の文字起こしは不要です。
音声や動画からSRTやVTTファイルを作成する
元が既存の字幕ファイルではなく、音声や動画の場合は、字幕ジェネレーターが文字起こしして、タイミングを付け、話者ラベルを付けた字幕を作り、SRT、VTT、そのほかの形式のいずれでもそのまま書き出せるので、変換の手順は別に要りません。全体の文字起こしには、アカウントと十分な残り分数が必要です。対象の個人アカウントには、カード確認後、または最初の購入時に、無料30分が1回付与されます。手順を順に知りたい場合は、動画からSRTファイルを作成する方法をご覧ください。
独立した情報源と規格
Hushscript は、競合関係にない独立した情報源を参照しています。これらは研究、規格、プラットフォームの仕組みを説明するもので、Hushscript を推奨するものではありません。
情報源の確認日: