リファレンス · SubRip
SRTファイルとは
SRTファイルとは、番号・タイムコード・せりふをひとまとまりにした字幕ブロックを並べたプレーンテキストの文書です。テキストエディタで開けばすべてが見え、動画の再生に合わせてプレーヤーが読み上げます。中身の構造、開き方と編集、対応する場所、名前の由来、VTTとの比較の順に説明します。
更新日
SRTファイルの中身
テキストエディタで開けば10秒で全体が見えます。字幕ブロックは空行で区切られて積み重なり、単独行の連番、00:00:12,400 --> 00:00:15,900という形のタイムコード行、1〜2行のせりふの3つで構成されます。時刻は動画先頭からの絶対値なので、フレームレートが変わっても古い形式のようには崩れません。
見出しもメタデータもスタイル指定もありません。一部のプレーヤーは<i>や<font color>タグを解釈しますが保証はなく、位置指定の仕組みも形式にはありません。言葉のほうが重要なら、番号とタイムコードを外してテキストにする変換が1回で済みます。
開き方と編集
メモ帳、テキストエディット、VS Codeですぐ開け、VLCならウィンドウにドラッグした瞬間に動画へ結び付きます。ブロックをまとめて数百ミリ秒ずらす、重なりを直すといった本格的な作業には、Subtitle EditやAegisubのような専用ソフトが波形付きで対応します。
つまずきやすいのは2点です。文字コードは、古いアーカイブが別のコードページで保存され、日本語が文字化けして届くことがあります——UTF-8で保存し直せば直ります。ファイル名は、動画と同じベース名(lecture-04.mp4とlecture-04.srt)のときだけ多くのプレーヤーが自動で読み込みます。
SRTファイルが使える場所
ほぼどこでも使えるのがこの形式の強みです。VLC、mpv、Plex、Kodiのほかスマートテレビのアプリも読み込みます。Premiere、DaVinci Resolve、Final Cut Pro、CapCutは字幕トラックへそのまま取り込めます。唯一の例外はブラウザで、HTML5の<video>要素はSRTを読み込みません——そのための変換がブラウザ向けにWebVTTへ変換です。
なぜこれほど簡素なのか
この名前は、2000年代初めにDVDから字幕を光学文字認識で抜き出していたWindowsソフト「SubRip」に由来します。出力は読みやすく解析しやすい必要があったため、番号とタイムコードと文字だけが残りました。標準化されたことは一度もなく、引用できる仕様書もありません。各プレーヤーが対応を合わせてきただけなので、20年前のファイルも今日開けますが、同じ理由で位置指定も色も持たないままです。
VTTとの比較
WebVTTはブラウザ向けの代替形式で、違いは短くまとめられます。WEBVTT行から始まり、ミリ秒はピリオドで区切り、番号は任意で、UTF-8が必須です。SRTは対応範囲で勝り、VTTはウェブで勝ちます。VTT形式を同じ切り口で解説したページにもう一方の側が書かれています。動画がすでに公開されているなら、公開済み動画の字幕をSRTのまま保存すれば、何も編集せずに済みます。
よくある質問
SRTファイルとは何ですか?
SubRip形式のプレーンテキストの字幕文書です。番号付きの字幕ブロックがそれぞれ開始時刻・終了時刻・話された言葉を持ち、動画の中身ではなく隣に置かれるファイルです。
SRTファイルはどう開きますか?
どんなテキストエディタでも開けます。動画を見ながらタイミングを追い込みたいときは、波形表示付きの専用ソフトが向いています。
SRTファイルを動画に追加するには?
VLCのウィンドウにドラッグすれば即座に再生され、動画と同じベース名にすればプレーヤーが自動で読み込みます。配信サイトのアップロード欄にそのまま渡せることも多く、対応していなければHandBrakeやffmpegで映像へ焼き込めます。
メモ帳でSRTファイルを編集してもいいですか?
かまいません。ブロックの間の空行を保つこと、ミリ秒の前のコンマを保つこと、UTF-8で保存することの3点を守れば、壊れたファイルはほぼ防げます。
SRTとVTTは何が違いますか?
SRTは各ブロックに番号を振り、ミリ秒をコンマで区切ります。VTTはWEBVTTの見出しから始まり、ピリオドを使い、UTF-8が必須で、ブラウザ向けの装飾や位置指定も加わります。