字幕ファイル形式:SRT、WebVTT、ASS、SBV、STL、TTML完全ガイド(2026)
主要な字幕形式を仕様、コードサンプル、プラットフォーム互換性、選択ガイドとともに解説。2026年版、SRT、WebVTT、ASS/SSA、SBV、STL、TTML/DFXPを徹底比較。
字幕ファイルとは、どのテキストを、いつ、そしてオプションとしてどのようなスタイルと位置で表示するかをビデオプレーヤーに指示するプレーンテキスト文書です。2026年において重要な7つの形式は、SRT(汎用のベースライン)、WebVTT(Webネイティブ、HTML5対応)、ASS/SSA(アニメやカラオケ向けの高度なスタイリング)、SBV(YouTube内部形式)、STL(欧州放送標準)、TTML/DFXP(NetflixおよびSMPTEワークフローで使われるW3C XML標準)です。それぞれに固有の用途があり、誤った形式を選ぶと互換性の問題が確実に発生します。
本リファレンスは、技術仕様、最小例、プラットフォーム対応、そして選択ツリーをカバーしており、一度で正しい形式を選べるようになっています。2形式のみの比較でよい場合は、より簡潔なSRT vs VTT記事をご覧ください。本ガイドは完全な地図です。
クイック比較
| 形式 | 拡張子 | スタイリング | 位置指定 | 主な用途 | プラットフォーム対応 |
|---|---|---|---|---|---|
| SRT | .srt | 最小限(斜体、太字、下線) | なし | 汎用ビデオ再生 | ほぼ全対応 |
| WebVTT | .vtt | CSSベース | 完全対応(x、y、align) | HTML5ビデオ、Web | すべての最新ブラウザ |
| ASS / SSA | .ass、.ssa | 豊富(フォント、色、エフェクト) | 完全対応 | アニメ、カラオケ、スタイル付き字幕 | VLC、MPV、Aegisub |
| SBV | .sbv | なし | なし | YouTubeアップロード | YouTube Studioのみ |
| STL(EBU) | .stl | 放送対応 | あり | 欧州TV放送 | プロ放送 |
| TTML / DFXP | .ttml、.dfxp、.xml | XML + CSS | 完全対応 | OTT、放送、Netflix | Netflix、SMPTEワークフロー |
STLの一部亜種を除き、すべての主要形式は人間が読めるプレーンテキストです。いずれも他の形式に変換できますが、リッチな形式から単純な形式に変換するとスタイリングは失われます。
SRT(SubRip Text)
SRTは字幕形式の最小公約数です。2000年代初頭にSubRip DVDリッピングツール向けに設計され、そのシンプルさこそがSRTが汎用になった理由です。ほぼあらゆるビデオプレーヤー、ビデオエディター、ストリーミングプラットフォームがSRTをサポートします。
構造。 SRTファイルはキューのシーケンスで、各キューには数値インデックス、-->で区切られた開始・終了タイムスタンプ、1行以上のテキストが含まれます。キューは空行で区切られます。タイムスタンプはHH:MM:SS,mmm(小数点区切りにカンマ)を使用します。
最小例:
1
00:00:01,000 --> 00:00:03,500
動画へようこそ。
2
00:00:04,000 --> 00:00:07,200
字幕はコンテンツをグローバルな
観客にアクセス可能にします。
スタイリング。 SRTはHTMLライクなタグの小さなサブセットをサポートします:<i>斜体</i>、<b>太字</b>、<u>下線</u>、<font color="#ff0000">色付き</font>。タグ対応はプレーヤーによって異なります。これ以外の要素は移植性がありません。
制限。 位置指定、縦書きテキスト、アニメーション、正確なCSS制御はできません。Unicodeはサポートされますが、古いプレーヤーの中にはWindows-1252やLatin-1と想定するものがあるため、最大限の互換性のためにはBOMなしのUTF-8で保存してください。
使うべき場面。 ビデオプラットフォームへのアップロード、ローカル再生、最大限の互換性が必要なあらゆる場面のデフォルト選択肢です。
WebVTT(Web Video Text Tracks)
WebVTTはHTML5ビデオ字幕のW3C標準です。表面上はSRT互換として設計されつつ、Webが実際に必要とする機能(CSSスタイリング、位置指定、メタデータキュー、チャプターマーカー)を追加しています。
構造。 WEBVTTヘッダーで開始し、キューが続きます。タイムスタンプはHH:MM:SS.mmm(小数点区切りはカンマではなくピリオド)。キューはスタイリングと位置指定ヒントをインラインで持てます。
最小例:
WEBVTT
1
00:00:01.000 --> 00:00:03.500
動画へようこそ。
2
00:00:04.000 --> 00:00:07.200 line:80% position:50% align:center
字幕はコンテンツをグローバルな
観客にアクセス可能にします。
スタイリング。 スタイルシート内の::cueおよび::cue(selector)擬似要素、もしくはVTTファイル内のSTYLEブロックを介してCSSをサポートします。色、背景、フォント、フォントサイズ、ウェイト、シャドウエフェクトを制御できます。
位置指定。 キュー設定(line、position、size、align、vertical)がテキストの表示位置を制御します。これがSRTに対する主要な機能的優位性です。
拡張機能。 コメント用のNOTEブロック、組み込みCSS用のSTYLEブロック、HTML <track>要素のkind属性経由のチャプター・メタデータトラックをサポートします。
使うべき場面。 HTML5ビデオ、Webプレーヤー、チャプターマーカー、そしてキャプションの外観をCSSレベルで制御する必要があるあらゆる場面。
ASS / SSA(Advanced SubStation Alpha)
ASS(Advanced SubStation Alpha)とその前身SSAは、字幕形式の中でも重量級の形式です。元々はSubStation Alphaカラオケ・アニメ字幕作成ツール向けに開発され、広く使われている字幕形式の中で最も豊富なスタイリングオプションを提供します。
構造。 INIライクなセクション:[Script Info]、[V4+ Styles]、[Events]。Eventsが実際の字幕キューで、各キューにはレイヤー、開始/終了時間、スタイル名、テキストが含まれます。テキストは中括弧内のインラインオーバーライドタグを含められます({\b1}太字{\b0}、{\c&H00FFFF&}黄色、{\pos(100,200)}配置済み)。
最小例:
[Script Info]
Title: Example
ScriptType: v4.00+
PlayResX: 1920
PlayResY: 1080
[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,48,&H00FFFFFF,&H000000FF,&H00000000,&H80000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1
[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:03.50,Default,,0,0,0,,動画へようこそ。
Dialogue: 0,0:00:04.00,0:00:07.20,Default,,0,0,0,,{\b1}字幕{\b0}は重要です。
スタイリング。 一度定義して多くのキューに適用できる名前付きスタイル。インラインオーバーライドでは、プロパティをアニメーション化(\t(start,end,\fscx120)で2つの時間の間に水平拡大)、テキストの回転、シャドウやアウトラインの適用、\p1 ... \p0コマンドによるベクターグラフィックスの描画が可能です。
使うべき場面。 アニメのファンサブ、カラオケ歌詞、スタイル重視のキャプション、タイポグラフィと位置指定において実用レベルの制御が必要なあらゆる場面。ほとんどのユースケースではオーバースペックです。
互換性。 VLC、MPV、mpv.net、ほとんどのアニメコミュニティ系プレーヤーがASSを完全にサポートします。Webプレーヤーは一般にサポートしません。YouTubeはアップロード時にASSのスタイリングを除去します。
SBV(YouTube形式)
SBVはYouTubeの歴史的な内部字幕形式です。本質的にはインデックスやスタイリングを除いたSRTの簡略版です。YouTube StudioはSRT、VTT、TTML、その他いくつかの形式と並んで、今でもSBVを受け付けます。
構造。 カンマで区切られたタイムスタンプに字幕テキストが続きます。キューは空行で区切られます。タイムスタンプはH:MM:SS.mmmを使用します。
最小例:
0:00:01.000,0:00:03.500
動画へようこそ。
0:00:04.000,0:00:07.200
字幕はコンテンツをグローバルな
観客にアクセス可能にします。
使うべき場面。 ほぼありません。ツールから既にSBVエクスポートを持っていてYouTubeに直接アップロードする狭いケースを除きます。新規ワークフローではSRTまたはVTTを使用してください。YouTubeは両方を受け付けます。
STL(EBU字幕データ交換形式)
EBU-STLは欧州放送連合のバイナリ字幕交換形式で、EBU Tech 3264で標準化されています。欧州放送テレビにおける支配的な形式であり、多くの公共放送局が納品に要求します。
構造。 全般字幕情報(GSI)ヘッダーの後に、128バイトのテキスト・タイミング情報(TTI)ブロックのシーケンスが続くバイナリコンテナです。GSIブロックは言語、文字セット、フレームレート、アスペクト比などのメタデータをエンコードします。各TTIブロックは、正確な入出力フレーム番号とスタイリング属性を持つ単一のキューです。
スタイリング。 文字放送スタイルの色と位置属性、倍の高さの文字、ボックス背景をサポートします。出力は従来の放送キャプション機能に合わせて視覚的に制約されます。
使うべき場面。 欧州TVネットワーク(BBC、ZDF、France Télévisionsなど)への放送納品。プロ放送業務に関わっていない限り、この形式に触れることはありません。
互換性。 プロ放送ソフトウェア(EZTitles、WinCAPS、Subtitle Workshop)がSTLを扱います。コンシューマー向けビデオプレーヤーは扱いません。
TTMLとDFXP(W3C Timed Text Markup Language)
TTML(Timed Text Markup Language)はW3CのXMLベース形式で、プロのOTT(over-the-top)およびストリーミング配信の中核となっています。DFXPはW3Cが当初標準化したTTMLのプロファイルであり、IMSC(SMPTE-TT)は放送局とNetflixが使用するより厳密なプロファイルです。
構造。 ルートの<tt>要素を持つXML文書で、<head>(スタイル、リージョン、メタデータ)と<body>(段落を含む区分。各段落は開始/終了タイミングを持つ字幕キューを表す)を含みます。
最小例:
<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xml:lang="en">
<head>
<styling>
<style xml:id="default" tts:color="white" tts:fontFamily="Arial" tts:fontSize="100%"/>
</styling>
</head>
<body>
<div style="default">
<p begin="00:00:01.000" end="00:00:03.500">動画へようこそ。</p>
<p begin="00:00:04.000" end="00:00:07.200">字幕はコンテンツを<br/>グローバルな観客にアクセス可能にします。</p>
</div>
</body>
</tt>
スタイリング。 インラインまたはスタイル定義を介した完全なCSSライクなスタイリング。位置指定用のリージョン、<set>要素によるアニメーション、東アジア書体のためのルビ注釈、リッチテキストセマンティクスをサポートします。
使うべき場面。 Netflix納品、OTTプラットフォーム、SMPTE-TTまたはIMSCプロファイルを必要とする放送ワークフロー、そして処理パイプラインを通しても残る正確なスタイリングが必要なあらゆる場面。
互換性。 NetflixはIMSC 1.1を要求します。Amazon Prime、Hulu、Disney+はTTML亜種を受け付けます。Apple TVはTTMLのプロファイルであるiTunes Timed Text(iTT)を使用します。コンシューマープレーヤーは一般にSRTやVTTを好みます。
プラットフォーム互換性マトリクス
| プラットフォーム | SRT | VTT | ASS/SSA | SBV | STL | TTML/DFXP |
|---|---|---|---|---|---|---|
| YouTube(アップロード) | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ |
| Vimeo | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| Netflix(納品) | ❌ | ❌ | ❌ | ❌ | ❌ | ✅(IMSC) |
| Amazon Prime(納品) | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
HTML5 <track> | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ |
| VLC | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
| MPV | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
| Adobe Premiere Pro | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ |
| DaVinci Resolve | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ |
| Final Cut Pro | ✅ | ✅ | ❌ | ❌ | ❌ | ✅(iTT) |
| TikTok / Instagram Reels | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
「納品」とは、コンシューマーアプリで直接再生されるのではなく、プラットフォームが取り込みパイプラインで当該形式を受け付けることを意味します。
決定ツリー:どの形式を使うべきか?
以下を順に答えてください。最初の「はい」があなたの形式です。
- Netflixまたは他の主要OTTサービスに納品していますか? TTML / IMSC 1.1を使用してください。これは好みではなく、必須要件です。
- 欧州放送TVに納品していますか? EBU-STLを使用してください。正確なSTL亜種については、各放送局の納品仕様を確認してください。
- アニメ、カラオケ、タイポグラフィ重視のコンテンツ用のスタイル付き字幕が必要ですか? ASS / SSAを使用してください。他に同等の制御を提供する形式はありません。
- Web上のHTML5ビデオに埋め込んでいますか? WebVTTを使用してください。
<track>要素のネイティブ形式です。 - YouTubeにアップロードしていますか? SRT(YouTube推奨入力)またはVTTを使用してください。レガシーワークフローでない限りSBVはスキップします。
- 不特定のプレーヤー全般での最大互換性が必要ですか? SRTを使用してください。これ以上に普遍的にサポートされるものはありません。
ほとんどのコンテンツクリエイター(ポッドキャスター、YouTuber、コース制作者)にとって、答えはほぼ常にSRTまたはWebVTTです。エキゾチックな形式は、特定のプラットフォームやクライアントが必須要件とする場合にのみ関係します。
形式間の変換
7つすべての形式は相互変換可能ですが、各変換は一方向で情報を失います。リッチな形式(ASS、TTML)からシンプルな形式(SRT、SBV)への変換はスタイリングと位置指定を除去します。逆方向の変換はテキストを保持しますが、元のスタイリングを再現することはできません。
一般的な変換ツール:
- FFmpeg:
ffmpeg -i input.ass output.srtはプレーンテキストへのストリップを含むほとんどの字幕変換を扱えます。 - Subtitle Edit(Windows、無料):約30の字幕形式間の変換と視覚プレビューが可能なGUIツール。
- Aegisub(クロスプラットフォーム、無料):SRTおよびVTTへのインポート・エクスポートに対応する専門的なASSエディター。
- オンライン変換ツール:単発の変換には有用ですが、機密性の高いコンテンツには使用しないでください(アップロードが管理外になります)。
キューベースのモデルを共有する形式ペア(SRT、VTT、SBV、ASSイベント)ではプログラムによる変換は簡単です。XML形式(TTML/DFXP)は名前空間と入れ子要素のため、適切なパーサーが必要です。
文字エンコーディングとUnicode
すべての最新字幕形式はUTF-8をサポートしており、2026年において使用すべきエンコーディングはこれだけです。レガシーファイルはWindows-1252、Latin-1、Shift-JIS、GB2312の場合があります。テキストがéではなく??????やéとして表示される場合、ファイルのエンコーディングが誤っています。ほとんどのエディターでUTF-8として再保存できます。
注意すべき間違いがひとつあります。UTF-8をbyte-order mark(BOM)付きで保存しないでください。BOMはファイル先頭にある3バイトの不可視データで、古いSRTパーサーや一部のストリーミングパイプラインを混乱させます。VS Codeでは「UTF-8 with BOM」ではなく「Save with Encoding → UTF-8」を使用してください。
音声からの字幕生成
最新の文字起こしサービスは、ほとんどの字幕形式に直接出力します。典型的なパイプラインは次のとおりです:
- ソースとなる音声・動画をアップロードまたは貼り付け
- 出力形式を選択:SRT、VTT、TXT、DOCX
- 生成されたファイルをダウンロードして動画に添付
VocovaはSRT、VTT、DRCX(Descript)、プレーンテキスト、タイムスタンプ付きPDFへのエクスポートをサポートしており、コンテンツクリエイターのあらゆる実用ニーズとほとんどのプロワークフローをカバーします。TTML、ASS、STLが必要な場合、標準的なアプローチは先にSRTへエクスポートしてから上述のツールで変換することです。
動画からの字幕生成のさらに詳しい手順については、AI字幕ジェネレーターガイドをご覧ください。
よくある質問
最も広く使われている字幕形式は何ですか?
2026年において最も広く使われている字幕形式はSRTです。事実上あらゆるビデオプレーヤー、ビデオエディター、ストリーミングプラットフォームでサポートされ、そのシンプルさから大半の文字起こしツールのデフォルト出力となっています。
SRTとVTTの違いは何ですか?
SRTは最小限のスタイリングで位置指定のないレガシーの汎用形式です。WebVTTは完全なCSSスタイリング、位置指定、チャプターマーカーを備えた最新のHTML5標準です。WebVTTはタイムスタンプでピリオド(.)を使い、SRTはカンマ(,)を使います。
YouTubeはWebVTTをサポートしますか?
はい。YouTube StudioはアップロードでWebVTT、SRT、SBV、TTML、SAMIほかいくつかの形式を受け付けます。生成・編集が最も簡単なSRTが最もよく使われます。
字幕ファイルはアクセシビリティコンプライアンスに使えますか?
はい。挙げた形式はすべて、話者識別と非音声([音楽再生中]、[ドアが閉まる音])を含めればクローズドキャプションとして機能します。特定のWCAG要件についてはアクセシビリティのための文字起こしをご覧ください。
Netflixが要求する形式は何ですか?
NetflixはTTMLのプロファイルであるIMSC 1.1を要求します。納品仕様は汎用TTMLを超えるスタイリング、タイミング、メタデータ制約を定めています。仕様を満たす必要があるベンダー向けに、NetflixはTimed Text Style Guideを公開しています。
ASSは2026年でも使われていますか?
はい。ASSは依然としてアニメのファンサブ、カラオケ風字幕、そしてVTTが提供する以上のタイポグラフィ制御を必要とするあらゆるユースケースの標準です。廃止されておらず、コミュニティツールの更新も続いています。
SRTにスタイリングを加えるにはどうすればよいですか?
SRTは小さなインラインHTMLタグのセットをサポートします:<i>、<b>、<u>、<font color="...">。それ以上高度な要素が必要であれば、VTTまたはASSへの切り替えが必要です。
まとめ
適切な字幕形式は、個人の好みではなく、ファイルの行き先によって決まります。汎用互換性にはSRT、WebにはWebVTT、スタイル付きタイポグラフィにはASS、OTT納品にはTTML、欧州放送にはSTL、SBVはほぼ不要です。すべてをBOMなしのUTF-8で統一し、プラットフォームが特定の入力を要求する場合はFFmpegまたはSubtitle Editで変換してください。
文字起こしワークフローを始める場合、まずSRTまたはVTTを生成してください。これらはコンテンツクリエイターのニーズの90%をカバーし、他のあらゆる形式は1回の変換で到達できます。
