TL;DR:動画の字幕は3種類のいずれかで、それぞれ異なる方法が必要です。外部字幕 — すでに手元にある別の .srt/.ass ファイル。埋め込み(ソフト)— 動画ファイル内の字幕トラック(MKV で一般的)。GeekLink が Mac 上で直接検出・抽出するか、mkvextract を使います。焼き込み(ハードサブ)— テキストが動画の映像に描き込まれており、抽出できるトラックがないので、フレームを読み取る OCR が必要です(GeekLink はこれも Mac で行えます)。5秒でわかるテスト:プレーヤーで字幕をオフにしてみてください。消えれば別トラックです。何をしても画面に残るなら、映像に焼き込まれています。
「字幕を抽出」しようとしてツールが何も見つけられなかった、あるいは使えないものを見つけた場合、ほぼ必ず、そのツールが想定しているのとは違う種類の字幕を扱っているからです。まず3種類のどれなのかを見極めれば、正しい方法は明らかになります。
自分の字幕がどの種類か見分けるには?
切り替えテスト。 VLC(または任意のプレーヤー)で動画を開き、字幕のオン/オフメニューを探します。字幕をオフにできますか?
- 消える場合 → 字幕は別トラック(埋め込み)か、外部ファイルです。テキストまたは画像として抽出可能です。
- 何をしても画面に残る場合 → 字幕は映像に焼き込まれています(ハードサブ)。トラックはなく、OCR が必要です。
ffmpeg の手がかり。 ffmpeg -i yourvideo.mp4 を実行します。Subtitle: ストリームが表示されれば、埋め込みトラックがあります。何も表示されないのに動画で字幕がはっきり見える場合は、映像に焼き込まれています(または ffmpeg がマッピングしなかったクローズドキャプション CC ストリーム)。だから「字幕を抽出」コマンドが何も返さないのです。
タイプ1 — 外部字幕(.srt / .ass)
簡単なケース:字幕はすでに動画の隣にある別ファイルか、字幕サイトからダウンロードできるものです。抽出するものは何もなく、ファイルを開くか編集するだけです。別の言語に翻訳したいだけなら、.srt を翻訳ツールにインポートし、タイミングをそのまま保ちます。
タイプ2 — 埋め込み/ソフト字幕トラック(MKV、一部の MP4)
字幕はコンテナ内のストリームなので、画質を損なわずに取り出せます。2つのサブケースがあります:
- テキストトラック(MKV や MP4 内の SRT/ASS/SSA/WebVTT) → Mac 上の GeekLink に動画をインポートします。埋め込みトラックを自動検出し、ワンクリックできれいな SRT に抽出します。OCR も再文字起こしも不要です。アプリをインストールしたくない場合は、mkvextract(MKVToolNix の一部)が無料のコマンドライン代替手段です。
- 画像トラック(DVD の VobSub、Blu-ray の PGS/SUP) → これらはテキストストリームではなくテキストの画像なので、SRT に変換するには OCR ベースの字幕トラックツールが必要です。GeekLink の埋め込みトラック抽出はテキストベースのトラックのみに対応しており、この画像トラックのケースには対応していません。
トラックがまったくない焼き込みテキスト(上記どちらのツールも掴むものがない)については、下のタイプ3をご覧ください。
タイプ3 — 焼き込み/ハードサブ字幕(難しいケース)
文字がすべてのフレームに永久的に描き込まれています — トラックも切り替えもありません。トラックベースのツール(GeekLink 自身の埋め込みトラック抽出や mkvextract を含む)は掴むものを何も見つけられません。指し示す字幕ストリームがないからです。テキストを取り戻す唯一の方法は、動画の映像をフレームごとに読み取る OCR です。
- Windows では: VideoSubFinder が字幕フレームを抽出し、Subtitle Edit が画像を OCR します。2ステップの工程です。
- Mac では: GeekLink が1パスで行います。字幕エリアに枠を描くと、焼き込みテキストを編集可能でタイミング同期済みの SRT として読み取ります。フォルダ全体を一度に、ローカルで、無料で。
簡易判定表
| あなたの状況 | 種類 | すべきこと |
|---|---|---|
| .srt ファイルが動画の隣にある | 外部 | 開くか翻訳するだけ |
VLC で字幕をオフにできる。ffmpeg が Subtitle: ストリームを表示する | 埋め込み(テキスト) | GeekLink(Mac)または mkvextract |
| オフにはできるが、DVD/Blu-ray である | 埋め込み(画像) | 画像トラック OCR ツール |
| 字幕がオフにできない — 映像に固定されている | 焼き込み | フレーム OCR — GeekLink(Mac) |
よくある質問
自分の字幕がハードサブかどうか、どうすればわかる?
プレーヤーでオフにできず、画面に固定されたまま残るなら、それは焼き込み(ハードサブ)です。字幕のオン/オフ切り替えで消えるなら、別トラックです。
焼き込み字幕をオフにできる?
いいえ。動画の映像の一部なので、どのプレーヤーでも隠せません。取り除くことはできませんが、OCR でテキストを編集可能な SRT として取り戻せます。
なぜ ffmpeg が「字幕トラックなし」と言うの?
字幕がトラックではなく、映像に焼き込まれている(または ffmpeg がマッピングしなかったクローズドキャプション CC ストリーム)からです。焼き込みテキストには、トラック抽出ではなく動画フレームの OCR が必要です。
ソフトサブとハードサブの違いは?
ソフトサブは別の切り替え可能なトラックです(テキストまたは画像として抽出可能)。ハードサブ(ハードコード/焼き込み)は映像に描き込まれており、取り戻すには OCR が必要です。
焼き込み字幕用の Mac ツールはある?
はい。GeekLink は Apple Silicon Mac 上でネイティブに、焼き込み字幕を編集可能な SRT に OCR します。geeklink.dev からの無料の直接ダウンロード(Mac App Store ではありません)で、アカウントは不要です。
GeekLink は埋め込み(ソフト)字幕トラックも抽出できる?
はい。GeekLink はインポート時にテキストベースの埋め込みトラック(SRT、ASS、SSA、WebVTT)を検出し、ワンクリックできれいな SRT に抽出します。OCR も再文字起こしも不要です。画像ベースの埋め込みトラック(DVD の VobSub、Blu-ray の PGS)には対応していません。それらには専用の画像トラック OCR ツールが必要です。
関連記事
開示: GeekLink は当社自身の製品です。Mac 上で埋め込み(テキスト)字幕トラックと焼き込み(ハードサブ)字幕の両方を抽出します。埋め込み画像トラック(DVD/Blu-ray)や、Mac をお使いでない場合は、mkvextract がテキストトラック向けの無料コマンドライン代替手段です。