
あらゆる動画ファイルから字幕を取得する方法(2026年版)
Summarize this article with:
動画にすでに埋め込み字幕トラックがある場合(MKVファイルでよく見られます)、FFmpegやMKVToolNixを使えば数秒で無料で取り出せます。埋め込みトラックがない場合(スマホ録画、画面キャプチャ、会議の録音の大半がこれに該当します)は、AIによる生成が最短ルートです。動画をアップロードし、言語を選び、数分でSRTまたはVTTファイルをダウンロードできます。このガイドでは両方のルートに加えて、どちらの方法が自分のファイルに当てはまるかを左右するMKV対MP4というコンテナの現実についても解説します。
動画から字幕を取得する方法は、たった一つの質問に行き着きます。あなたのファイルには、コンテナの中に字幕トラックがすでに埋め込まれていますか?**あるなら抽出します。なければ音声から生成します。**どちらのケースかを見極めるのにかかるのは約10秒ですが、その後のワークフロー全体が変わってきます。
まずファイルを確認する
何よりも先に、扱っているファイルがどういうものか把握しましょう。ターミナルを開いて次のコマンドを実行します:
ffprobe -loglevel error -select_streams s -show_entries stream=index,codec_name:stream_tags=language -of csv=p=0 your-video.mkv
出力にsubrip、ass、webvttといったコーデック名の字幕ストリームが表示されれば、テキストベースの埋め込みトラックがあり、そのまま直接抽出できます。hdmv_pgs_subtitleやdvd_subtitleと表示された場合は画像ベースです(詳細は後述)。出力が空の場合、ファイルには埋め込み字幕がないため、生成する必要があります。
ターミナルを使わずに確認することもできます。VLCでファイルを開き、「字幕」メニューから「字幕トラック」を選んでください。字幕の選択肢が表示されれば、埋め込みトラックがあります。
コンテナの現実:MKV vs MP4
コンテナ形式によって、利用できる字幕の選択肢が変わります。主な違いを表にまとめました:
| コンテナ | 埋め込み字幕の対応 | 主な字幕コーデック | SRTへの抽出可否 |
|---|---|---|---|
| MKV | 強力(複数トラック対応) | SRT、ASS、PGS、VobSub、WebVTT | 可(SRT/ASSトラック)/不可(OCRなしのPGS/VobSub) |
| MP4 | 限定的 | tx3g(Timed Text)、CEA-608 | 条件付きで可(互換性に注意) |
| MOV | 限定的 | tx3g | 可の場合あり |
| WebM | Web用途に良好 | WebVTT | 可 |
| AVI | ごくわずか | ほとんど存在しない | まれ |
MKVは、使用可能な埋め込み字幕トラックを持っている可能性が最も高いコンテナ形式です。特にBlu-rayやDVDからのリッピングファイル、ダウンロードしたTV番組、アニメなどがそうです。一方、YouTubeからダウンロードしたMP4、スマホで撮影したMP4、編集ソフトから書き出したMP4に埋め込み字幕トラックが入っていることはまずありません。
ルート1:埋め込みテキスト字幕を抽出する
ffprobeでテキストベースの字幕トラック(subrip、ass、webvttコーデック)があることが確認できたら、抽出はFFmpegコマンド1つで済みます。
最初の字幕トラックをSRTとして抽出:
ffmpeg -i video.mkv -map 0:s:0 subtitles.srt
インデックスを指定して特定のトラックを抽出(多言語のMKVで便利):
ffmpeg -i video.mkv -map 0:s:1 subtitles_track2.srt
言語タグで抽出:
ffmpeg -i video.mkv -map "0:m:language:eng" -map "-0:v" -map "-0:a" english.srt
すべての字幕トラックを一括抽出:
ffmpeg -i video.mkv output_%d.srt
GUIを好むユーザーには、Matroskaファイル用の公式無料ツールであるMKVToolNixがおすすめです。MKVをドラッグ&ドロップし、映像トラックと音声トラックのチェックを外して字幕トラックだけチェックを残し、「Start muxing」をクリックします。SRT、ASS、WebVTT、PGSの抽出に対応しています(PGSはテキストではなく.supファイルとして出力されます)。
PGSの問題
**PGSとVobSubのトラックは画像であり、テキストではありません。**Blu-rayのリッピングでは各字幕フレームがビットマップとして保存されており、画面上ではテキストのように見えますが、中に検索可能な文字はありません。変換すべきテキストが存在しないため、FFmpegはこれらをSRTに変換できません。選択肢は2つあります。OCRソフト(WindowsならSubtitle Editの内蔵OCRなど)を使って画像からテキストを抽出するか、抽出を完全に諦めて、後述のルート2でAI字幕を新しく生成するかです。
ルート2:音声から字幕を生成する
スマホ動画、会議の録音、画面キャプチャ、ポッドキャストのクリップ、YouTubeのダウンロードなど、日常的なファイルのほとんどには埋め込みトラックがありません。この場合は、音声を文字起こしして字幕を生成します。
CATTの字幕ジェネレーターなら、ソフトを一切インストールすることなくブラウザ上で処理できます:

- 動画ファイルをアップロードします。MP4、MOV、AVI、MKV、WebM、WMVすべて受け付けます。
- 動画で話されている言語を選択します。
- 処理が完了するのを待ちます。30分未満の動画のほとんどは数分で終わります。
- エディターで生成された字幕を確認し、誤りがあれば修正します。
- 字幕ファイルをSRT、VTT、ASSのいずれかの形式でダウンロードします。
最新のAI文字起こしは、一人の話者によるクリアな音声であれば90〜98%の精度を達成します。ノイズの多い音声、強い訛り、専門用語が密集している場合は、修正箇所が多くなることを想定しておきましょう。
すでに文字起こしがあって、それをタイミング付きの字幕ファイルにしたい場合は、動画をテキストに変換ツールがタイムスタンプ付きの出力を生成し、SRTやVTTとして直接書き出せます。
結果を編集する
抽出した字幕はそのまま使えることが多いですが、生成した字幕は簡単な見直しが必要です。
よくある修正点:
- **固有名詞。**人名やブランド名は、聞こえたままの音で文字起こしされることがよくあります。
- **改行。**長い行は自然なフレーズの区切りで分割しましょう。1行は42文字以内、1つの字幕ブロックは最大2行までにします。
- **タイミングのずれ。**音声に対して字幕の表示が少し早かったり遅かったりする場合は、任意のSRTエディターで開始時間を調整します。
- **表示時間。**1つの字幕ブロックにつき最短1秒、最長7秒にすると読みやすくなります。
SRTはプレーンテキスト形式なので、任意のテキストエディターで直接編集できます。視覚的なタイムライン表示が必要な場合は、字幕エディター比較を参照して、デスクトップ版かブラウザ版か適切なツールを選びましょう。
字幕形式:どれをダウンロードすべきか
**ほぼすべての場面で、SRTが正しいデフォルトです。**YouTube、VLC、Premiere Pro、Final Cut Pro、DaVinci Resolveをはじめ、事実上すべての動画プラットフォームと編集ツールで使えます。この形式は、番号付きのキューブロック、タイムスタンプ、字幕テキストからなるプレーンテキストファイルです。
VTT(WebVTT)はHTML5動画プレイヤーのWeb標準です。track要素を使ってウェブサイトに動画を直接埋め込む場合に使いましょう。
ASS/SSAは、カスタムフォント、色、位置指定を伴う装飾字幕のために知っておく価値があります。アニメの配布でよく使われます。SRTを受け付けるツールの多くはASSも受け付けますが、まず対象のプラットフォームを確認してください。
より詳しい違いについては、SRTとVTTの字幕形式の違いを参照してください。
字幕ファイルを入手したあと
字幕ファイルと動画は、それぞれ独立した2つのアセットです。使い方は2通りあります:
**ソフト字幕(別ファイル):**SRTまたはVTTファイルを動画と一緒にアップロードします。視聴者は字幕の表示・非表示を切り替えられます。YouTube、Vimeo、ストリーミングプラットフォームではこれが標準です。プラットフォーム側のエンコード処理はプラットフォーム自身が行います。
**ハード字幕(焼き込み):**字幕テキストが動画のピクセルに恒久的に描き込まれます。Instagram Reels、TikTok、視聴者が操作なしで見るすべてのプラットフォームでは必須です。ワークフローについては、動画への字幕追加方法と動画への字幕焼き込みのガイドを参照してください。
字幕を別の言語に翻訳する必要がある場合は、字幕翻訳のワークフローガイドを参照してください。
FAQ
動画が何語かわからない場合でも字幕を取得できますか?
はい。動画をAI字幕ジェネレーターにアップロードしてモデルに言語を自動検出させてもよいですし、よく使われる言語をいくつか手動で試してもかまいません。主要な言語であれば検出精度は高いです。字幕ができあがったら、別の出力言語が必要な場合は翻訳ツールに通すこともできます。
AIによる字幕生成にはどれくらい時間がかかりますか?
典型的な10分の動画なら、生成はおおむね30〜90秒で完了します。1時間の動画でも通常は3〜6分で終わります。手作業での字幕作成は動画の再生時間の5〜10倍かかるため、桁違いに速いと言えます。
MKVに埋め込み字幕があるのに、FFmpegで抽出しようとするとエラーが出ます。なぜですか?
最も多い原因は画像ベースの字幕トラックです。Blu-rayのリッピングファイルにはPGS(Presentation Graphic Stream)やVobSubトラックが含まれていることが多く、これらはテキストではなくビットマップです。FFmpegはこれらを直接SRTやVTTに変換できません。ffprobeを実行してコーデック名を確認してください。hdmv_pgs_subtitleやdvd_subtitleと表示された場合は、OCRの工程が必要になるか、代わりに新しくテキストの文字起こしを生成する必要があります。
字幕はどんな形式で取得できますか?
最も有用な出力形式は、SRT(YouTube、VLC、Premiere Pro、Final Cutなどほぼすべての動画プラットフォームで使える)、VTT(HTML5プレイヤーのWeb標準)、ASS/SSA(カスタムフォントや位置指定のある装飾字幕向け)です。ほとんどのAIジェネレーターとFFmpegはこの3つすべてに対応しています。迷ったらSRTが最も安全なデフォルトです。
参考資料
Try transcription free
Convert any audio or video to clean, unwatermarked text — speaker labels, timestamps, and AI summaries included. First 10 minutes free, no account.
Related Articles
How to Add Timestamps to a Transcript
Learn how to add timestamps to a transcript with an audio-to-text tool, then export timestamped SRT or VTT subtitle files for easy navigation and editing.
How to Transcribe a Conference Talk to Text
Learn how to transcribe a conference talk or keynote to text, label speakers, and export SRT, VTT, or TXT using a straightforward upload or URL workflow.