分析と広告のためのCookie
分析と広告のためにCookieを使っており、どちらもGoogleに送られます。拒否しても、目に見える動作は何も変わりません。プライバシーポリシーを読む
SRT
いちばん広く通る字幕形式。通し番号、時刻、そして装飾のない文字だけです。
SRT
SRT はプレーンテキスト形式です。どのエディターでも開けます。 字幕制作のために使われます。
拡張子は .srt、正式名称は SubRip Subtitle です。ただしどちらも、そのファイルが中に何を持てるかほどには多くを語りません。このページの残りは、その中身についての話です。
2000 年までさかのぼります。
古さが役に立つのは、ごく実務的な理由からです。形式が古いほど、それを覚える時間が多くのプログラムに与えられてきたということだからです。
仕様書がそのまま公開されているので、中身を推し量るのではなく文書を読んで実装できます。この形式が数多くのプログラムに載っているのはそのためであり、20 年前に書かれたファイルが今も開けるのもそのためです。ただし「仕様が公開されている」ことと「使用料が要らない」ことは別の話です。中でコーデックを包んでいる形式では、特許のライセンスは仕様書が答えていない別の問題として残ります。
SRT ファイルは中身をそのまま保存します。保存し直しても何も変わらないので、開いて、直して、また保存する——それを何度繰り返しても劣化は積み上がりません。これが、渡すための形式ではなく作業のための形式である理由です。
VLC、Subtitle Edit、Aegisubが読めますし、同じ種類のプログラムならたいてい読めます。
ファイルが開かないとき、形式が悪いことはめったにありません。たいていはプログラムのほうが形式より古いのです。もっと古い形式に変換してしまうのが確実な逃げ道で、このサイトの残りの部分はそのためにあります。
これを読めるブラウザーはありません。
これを変換するいちばんよくある理由がこれです。形式が悪いのではありません。ファイルを見せたい場所が、それを読めないというだけのことです。
SRT は、開いて手を入れるために作られています。作業が続いているあいだはこの形式でファイルを持ち、完成したものが必要になるたびに、ここから書き出してください。
このサイトでいちばん単純で実用的な形式です。単独の行にある番号、矢印でつながれた二つのタイムスタンプの行、一行か二行のテキスト、そして空行。それを繰り返します。それが仕様のすべてで、これがどんなプレーヤーやエディタ、プラットフォームでもこれを読める理由です。
タイムスタンプは時、分、秒、ミリ秒で、ミリ秒の前にはピリオドではなくカンマが置かれます。このカンマこそ、手で編集したあとに厳格なパーサーがファイルを拒否する、いちばんよくある原因です。世の中の大半は小数点を別の書き方で書くからです。
違う二つの不具合があり、直し方もそれぞれ違います。見分けるのに十秒あれば十分です。動画を再生して最初の字幕を確かめ、それから終わりに近いところの一つも確かめてください。
どちらも同じ量だけずれているなら、それはオフセットです。字幕はたいてい違う始まり方をする版に合わせてタイミングを付けられていて、よくあるのは配給会社のロゴが付いていたり、イントロが長かったりする場合です。すべてのタイムスタンプを同じ秒数だけずらせば完全に直ります。
ずれが再生とともに大きくなっていくなら、それはフレームレートの不一致です。字幕は毎秒 25 フレームの放送版のために作られ、あなたのファイルは毎秒 23.976 で動いている、あるいはその逆で、両者は着実に離れていきます。これにはずらす操作ではなく比例した引き伸ばしが必要で、オフセットをどれだけいじっても両端を同時に合わせることはできません。
SRT ファイルは、テキストがどう保存されているかを宣言しません。この形式のどこにも「これは UTF-8 だ」と言う場所がないので、プレーヤーは推測します。古いプレーヤーは地域ごとの単バイト文字コードを推測しがちで、これがスペイン語やポーランド語の字幕ファイルが疑問符と四角形だらけになる理由です。
UTF-8 で保存すれば、たいていの現代のプレーヤーは正しく判定します。一部の古いハードウェアプレーヤーは地域の文字コードのほうを求め、UTF-8 を文字化けさせます。文字がおかしいなら、ファイルはたいてい無事で、読み手のほうが誤読しています。ダウンロードが壊れていたと決めつける前に、別の文字コードで保存し直してみる価値があります。
フォントも、色も、位置指定も、カラオケのタイミングもありません。一部のプレーヤーはイタリックと太字のために HTML に似たいくつかのタグを尊重しますが、それはこの形式の一部というより慣習であり、それに頼ったファイルはどこかで平板に見えます。
見た目のすべてはプレーヤーが決めます。字幕がどこに座るか、どれだけ大きいか、縁取りは何色か。これが SRT ファイルが小さく、あらゆる場面で互換性を持つ理由であり、本物の字幕デザインをする人が代わりに ASS を使う理由でもあります。ASS では位置やフォント、効果がファイルの一部です。
たいていのデスクトッププレーヤーは、字幕ファイルが動画と同じ名前で隣にあれば自動的に読み込みます ── film.mp4 と film.srt が同じフォルダーに。名前を一文字でも間違えると何も表示されず、これが「字幕が動かない」という不満の多くを占めています。
拡張子の前に置く言語のサフィックス、film.en.srt のようなものは、いくつかの言語に対する慣習で、一般的なプレーヤーはそれを理解します。それを超えると、一部のテレビやメディアボックスは USB スティック上の、動画と同じパーティションにある字幕しか読まず、そのほとんどが SRT 以外は読みません。
WebVTT はブラウザーがウェブページ上の字幕に使う形式で、密接な親戚です。構造はほぼ同一で、タイムスタンプはカンマの代わりにピリオドを使い、ファイルはヘッダー行から始まります。両者間の変換はほとんど機械的です。
ルールは単純です。ウェブサイト上の動画には VTT が要ります。HTML の video 要素が受け付けるのはそれだからです。デスクトップのプレーヤーで再生される動画、テレビ、プラットフォームへのアップロードには SRT が求められます。変換には一瞬しかかかりません。ワークフローが生み出すほうを保管しておき、配信の時点で変換すれば、いずれずれていく二つのコピーを維持せずに済みます。
どんなテキストエディタでも構いません。ファイルはテキストで、構造は一目瞭然なので、誤字を直したり一件だけ遅い字幕をずらしたりするなら、字幕エディタよりそちらのほうが速いです。BOM なしの UTF-8 で保存し、項目間の空行を残してください。空行が一つ抜けると、厳格なプレーヤーではそれ以降のすべてが消えてしまいます。
ファイル全体をずらす、フレームレートを変える、波形に合わせて再同期するといった体系的な作業には、専用の字幕エディタが役に立ちます。九百個のタイムスタンプに対して手でオフセットをかけるのは、テキストエディタでも不可能ではありませんが、夜の使い方としては褒められたものではありません。
| 拡張子 | .srt |
|---|---|
| メディアタイプ | application/x-subrip |
| 初版 | 2000 |
最初の字幕と終わりに近い一つを確かめてください。どちらも同じ量だけずれているなら、一定のオフセットが必要です。たいてい動画のほうがタイミングを付けたときの版よりイントロが長いからです。ずれが時間とともに大きくなるなら、フレームレートが違い、タイミングをずらすのではなく比例して引き伸ばす必要があります。
どんなテキストエディタでも開けます。プレーンテキストで構造は非常に単純です。字幕として読むには、動画と同じフォルダーに同じファイル名で置けば、たいていのプレーヤーが自動的に読み込みます。
SRT には文字コードを宣言する方法がないので、プレーヤーが推測します。UTF-8 で保存してください。現代のプレーヤーはそれを想定しています。一部の古いハードウェアプレーヤーは地域ごとの文字コードを求め UTF-8 を文字化けさせます。あるプレーヤーでは間違い、別のプレーヤーでは正しいなら、これが理由です。
あまり持たせられません。この形式にはスタイリングが一切なく、フォント、大きさ、色、配置はプレーヤーが決めます。イタリックと太字のタグを慣習として尊重するプレーヤーもありますが、保証されたものではありません。デザインされた字幕には、ファイルの一部としてスタイリングを持てる ASS があります。
密接な親戚です。VTT はブラウザーがウェブページ上の動画のために受け付ける形式で、ミリ秒の前にピリオドを使い、ヘッダー行から始まります。SRT はカンマを使い、デスクトップのプレーヤーやテレビ、アップロード用プラットフォームが求めるものです。両者間の変換は簡単です。
いちばん多いのはファイル名が動画と完全には一致していないか、違うフォルダーにあることです。それでもだめなら、項目間の空行を確かめてください。一つ抜けると厳格なプレーヤーではそれ以降のすべてが消えます。タイムスタンプがミリ秒の前にカンマを使っているかも確認してください。