SubRip
もっとも単純な字幕形式で、ほぼすべての再生ソフトが対応しています。番号付きのテキストブロックで、それぞれに開始時刻と終了時刻があります。ヘッダーはなく、装飾もほとんどなく、行の位置を指定する公式な方法もありません。だからこそ、どこでも使われています。
概要
| 拡張子 | .srt |
|---|---|
| メディアタイプ | application/x-subrip(未登録) |
| 仕様 | なし。再生ソフトが受け入れる内容によって決まります。 |
| 時間の精度 | ミリ秒 |
| 文字エンコーディング | ファイル内では宣言されません。UTF-8が安全な選択です。バイトオーダーマークは一部の古いプレーヤーやテレビで役立ちます。Subtitldは、古いエンコーディングのファイルを開く際に自動判別します。 |
| 装飾 | 斜体、太字、下線、取り消し線、色を、非公式のタグで指定します。 |
| 表示位置 | 形式自体には規定がありません。SubStation Alpha由来の{\an8}などのコードが広く読まれています。 |
| コンテナ内 | MatroskaではS_TEXT/UTF8として、MP4ではmov_textに変換して格納されます。 |
字幕の構造
ファイルは複数のブロックのリストです。各ブロックは、必ず次の順序で4つの部分から構成されます。
3 00:00:27,000 --> 00:00:30,500 ...you have your robotics, and I just want to be awesome in space.
1から始まる数字です。必須ですが、ほとんどの再生ソフトは無視します。
- 2 · 時間
開始時刻、矢印
-->、終了時刻です。矢印の前後にスペースを入れます。 - 3 · テキスト
1行以上のテキストです。読みやすさの点では2行が一般的な上限です。
- 4 · 空行
ブロックの終わりを示します。空行がないと、多くの再生ソフトは次の番号をテキストとして読んでしまいます。
タイムコード
区切りはピリオドではなくカンマです。 00:00:27.000はWebVTTの書き方です。一部の再生ソフトはピリオドを許容しますが、厳格なものはファイルを拒否します。SRTが「開けない」原因として最も多いのがこれです。Subtitldはどちらも読み取りますが、書き出すときは必ずカンマを使います。
書式タグ
以下のタグは標準規格ではありませんが、長年にわたって多くのプレーヤーで共通して使われてきました。使用は控えめにしてください。すべてのプラットフォームで表示されるわけではありません。
| タグ | 効果 | 対応状況 |
|---|---|---|
<i>…</i> |
斜体。画面外の話者に使います | ほぼすべての環境 |
<b>…</b> |
太字 | 多くのデスクトップ用プレーヤー |
<u>…</u> |
下線 | 多くのデスクトップ用プレーヤー |
<s>…</s> |
取り消し線 | 一部のデスクトップ用プレーヤー(VLCやmpvなど) |
<font color="#ffd700"> |
文字色。16進数コードまたは色名で指定 | デスクトップ用プレーヤー。オンラインでは無視されることが多い |
<font face="…" size="…"> |
フォントとサイズ | 一部のデスクトップ用プレーヤー |
{\an8} |
上端に配置。SubStation Alpha由来 | VLC、mpvなど |
行の配置
{\an1}から{\an9}は、テンキーの配置に合わせて行を配置します。コードは字幕テキストの先頭に置きます。
| 左 | 中央 | 右 | |
|---|---|---|---|
| 上 | {\an7} |
{\an8} |
{\an9} |
| 中 | {\an4} |
{\an5} |
{\an6} |
| 下 | {\an1} |
{\an2}(既定) |
{\an3} |
壊れたSRTを開く
SRTファイルはさまざまな場所から来ており、多くは規則から外れています。Subtitldは空行ではなく、タイミングの行を基準に各字幕を見つけるため、次のようなファイルも開けます。
- 任意のエンコーディング: BOMあり・なしのUTF-8、UTF-16、Windows-1252などの旧形式
- カンマの代わりのピリオド、1桁の時間、3桁以外の小数点以下の桁数、短い矢印(
->) - 番号の欠落、空行の欠落や余分な空行、字幕内の空行
- 終了時刻の後に一部のツールが書く座標
- 順序が乱れた字幕(正しい順に並べ直します)
SRTとSubtitld
- 各字幕のテキストと改行
- 斜体、太字、下線、取り消し線、色、位置
- 開始時刻と終了時刻(ミリ秒単位)
- 字幕の順序
- 話者、その顔、色(話者名はテキストの前に入れられます)
- 原文の横に並ぶ翻訳(翻訳で置き換えるか、原文の下に配置できます)
- 吹き替えとメタデータ
これらを残すには.usfxプロジェクトとして保存してください。
SRTの書き出し
エクスポート、次に字幕、そしてSRTを選ぶと、次のオプションが表示されます。
- テキスト原文、翻訳、または両方(翻訳は原文の下に配置)。
- 話者名省くか、テキストの前に付けます(Thom: …)。
- 書式残すか、タグが文字として表示されてしまうプラットフォーム向けに取り除きます。
- 時間をずらすすべての字幕を、同じ量だけ早めたり遅らせたりします。
- エンコーディングUTF-8、古い再生ソフトやテレビ向けのBOMつきUTF-8、UTF-16、またはWindows-1252。
- 改行コードLinuxとmacOS(LF)、またはWindows(CRLF)。
どのオプションを選んでも、出力は通常のSubRipです。字幕は開始時刻の順に並び、1から番号が振られ、ミリ秒の前にはカンマが付きます。空の字幕は省かれます。字幕内の空行も省かれます。多くの再生ソフトでは、その空行で字幕が途中で終わってしまうためです。
SRTかWebVTTか
| SubRip .srt | WebVTT .vtt | |
|---|---|---|
| 最初の行 | 最初の番号 | WEBVTT |
| ミリ秒 | カンマの後 | ピリオドの後 |
| 番号 | 必須 | 任意の識別名 |
| 表示位置 | 非公式に{\an8}などを使用 |
キュー設定: line、position、align |
| 装飾 | 非公式のタグ | タグ。::cueによるCSS |
| 話者 | テキストの一部としてのみ | 音声タグ: <v Thom> |
| Webブラウザ | 変換が必要 | ネイティブ対応。<track>で指定 |
| 向いている用途 | 再生ソフト、エディタ、アップロード | Web上の動画 |
豆知識
この形式の名前は、DVDから字幕をOCRで読み取ってテキストとして書き出したWindowsプログラム、SubRipに由来します。
WebVTTは、ヘッダー、キュー設定、CSSが加わる前は、Web向けに適応させたSubRipとして、この名前で作られました。
この形式の仕様を公開した団体はありませんでした。カンマ、矢印、空行という慣習が、四半世紀にわたって使われ続けています。
関連する形式
Subtitld で動画と一緒に開き、波形上でタイミングを調整しましょう。