要点:字幕抽出をどこまで自動化できるかは、3種類の字幕のどれを持っているかによります。MKV/MP4ファイル内の切り替え可能な字幕トラックはffmpegコマンド1つ——完全にスクリプト化できます。字幕がまったくない動画は音声認識で扱います。Whisperはコマンドラインからローカルに動き、あるいはGeekLinkの監視フォルダーがフォルダーに入れたすべての動画を自動で文字起こし・翻訳します——ファイルごとのクリックは不要です。焼き込み字幕(ピクセルに焼き付けられたテキスト)はスクリプト化に抵抗する工程です——macOSにはこれに対応した成熟し保守されたオープンソースのOCRパイプラインが存在しません——そこをGeekLinkのバッチOCR(1回の実行で50本以上、完全ローカル)が埋めます。 どの経路も標準的なSRTを出力します。SRTは、下流のあらゆるスクリプト・エディター・AIエージェントが扱える普遍的なインターフェースです。
2026年、なぜ人々は字幕抽出を自動化しているのか?
字幕抽出はかつて単発の作業でした。アプリを開き、動画を読み込み、クリックしていく。2026年、それはますますより大きなワークフローの中の一工程になっています。制作者はカタログ全体を新しい言語向けに再利用します。語学学習者はsubs2srsのような例文マイニングツールに投入します。チームはAIコーディングエージェント——Claude Codeや類似のツール——を組み込んで、動画パイプラインを端から端まで統括します:ダウンロード、字幕抽出、翻訳、QC、公開。
字幕抽出が単発の作業ではなくパイプラインの一工程になった瞬間、問いが変わります。無人で実行できるか、バッチで実行できるか、スクリプトやAIエージェントがそれをトリガーして出力を受け取れるか。 本ガイドは、字幕の種類ごとにこの3つの問いに正直に答えます——答えが「スクリプトだけでは無理」となる部分も含めて。
以下すべてを形づくる制約が1つあります。パイプラインはローカルに留まる、ということです。クラウドの字幕APIは存在しますが、何時間もの映像を処理する制作者にとっては分単位で課金され、ソース動画のアップロードが必要になります——未公開素材やクライアント素材にとっては論外です。本ガイドのすべては自分のMac上で動き、動画は一切アップロードされません。
どの種類の字幕が自動抽出できるのか?
あらゆる動画は3つのケースのいずれかに当てはまり、それぞれのケースでまったく異なる自動化の物語があります:
- 切り替え可能な字幕(埋め込みトラック)——コンテナ内の独立したテキストトラック(MKVで一般的、一部のMP4にも)。テキストはすでにデータとして存在します。抽出は簡単で100%スクリプト化できます。
- 字幕なし——動画には音声しかありません。音声認識が必要です。ローカルで高度に自動化できますが、品質には注意点があります。
- 焼き込み字幕(ハードコード)——テキストが映像の一部で、アニメのリッピング、中国や韓国のバラエティ番組、TikTok/Reelsの転載、古い放送映像でよく見られます。元のテキストデータは失われています。映像フレームへのOCRが必要です。これが自作スクリプトに抵抗する工程です。
役立つ目安:プレーヤーで字幕をオフにできるなら、コマンド1つで抽出できます。話し声は聞こえるのに字幕が見えないなら、ローカルの音声認識が処理します。字幕が映像の一部なら、専用のOCRツールが必要です。 どのケースか分からない場合は、埋め込み対焼き込みガイドで10秒で見分ける方法を紹介しています。
切り替え可能な字幕トラックを自動で抽出するには?
これは簡単なケースで、特別なツールは一切必要ありません。ffmpeg(無料、Homebrewでインストール可能)はコマンド1つで字幕トラックを抽出します:
ffmpeg -i input.mkv -map 0:s:0 output.srt
これは最初の字幕ストリーム(0:s:0)を取り出してSRTとして書き出します。シェルのループで包めば、フォルダー全体のバッチ抽出になります。どんなAIコーディングエージェントでもこれを書いて実行してくれます——切り替え可能な字幕トラックの抽出は解決済みで完全にスクリプト化できる問題であり、有料ソフトは不要です。
知っておくべき注意点が2つあります。1つ目は、DVDとBlu-rayの字幕トラック(VobSub/PGS)はテキストではなく画像として保存されているため——-mapだけではSRTに変換できず、これらもOCRが必要です。2つ目は、多くのファイルには異なる言語の複数トラックがあるので、インデックスを選ぶ前にまずffprobeで一覧表示してください。詳細はMKVとMP4のガイドで扱っています。
Macで音声から字幕への文字起こしを自動化するには?
字幕データがまったくない場合、音声認識がそれを生成します。Macにはローカルの自動化経路が2つあります。
経路1:Whisperを直接スクリプト化する
OpenAIのWhisperはオープンソースで、コマンドラインから動きます:whisper video.mp4 --model small --output_format srt。これは実際にスクリプト化でき、すでにAIエージェントでMacを操作しているなら、フォルダー内の動画に対してWhisperを統括させることも可能です。ギャップは文字起こしの後に現れます。生のWhisper出力には翻訳の工程がなく、結果を動画と照らし合わせて視覚的に確認する手段もなく、すべてを見ずにどの行を間違えたか知る方法もありません。
経路2:監視フォルダーによる自動化(スクリプト不要)
GeekLinkの監視フォルダー機能は、同じ自動化のノーコード版です。GeekLinkにフォルダーを一度指定し、認識と翻訳の設定を選べば、その後そのフォルダーに入れたすべての動画が自動で取り込まれ、文字起こしされ、翻訳されます——ファイルごとのクリックも、保守するスクリプトも不要です。 ダウンローダー、AIエージェント、あるいは人がフォルダーに投入でき、あとはアプリがやってくれます。
これが自動化にとって重要なのは、監視フォルダーそれ自体が統合ポイントだからです。ファイルを移動できるもの——yt-dlpスクリプト、Hazelのルール、エージェント、ネットワーク共有——なら何でも、GeekLinkがAPIを公開しなくても処理をトリガーできます。認識はWhisperで49言語をカバーし、翻訳は選んだモデル(Claude 3.5 Haiku、GPT-4o、GPT-4o mini、DeepSeek)で40以上の言語をカバーするので、フォルダーは文字起こしだけでなく2言語字幕も出力できます。
焼き込み字幕の抽出が、自動化の最も難しい工程なのはなぜ?
ここが本ガイドの正直な部分です。動画の字幕がピクセルに焼き付けられている場合、他のあらゆる場面で通用する「とにかくスクリプト化する」というアプローチが破綻します。2026年時点で、macOS上で焼き込み字幕を確実にタイミング付きSRTに変換する、成熟し保守されたオープンソースのパイプラインは存在しません——この分野のオープンソースOCRプロジェクトはWindows寄り、GPU依存、または保守されていないかのいずれかです。(全体像は焼き込み字幕抽出ツール総まとめで比較しています。)
週末に書いたスクリプトでは無理な理由:動画OCRは「スクリーンショット+文字認識」ではありません。1秒に1フレームをサンプリングしてOCRするだけの素朴なスクリプトは、4つの壁に同時にぶつかります:
- タイミング精度。 1秒ごとのサンプリングでは、字幕の開始・終了時刻が1行あたり最大1秒ずれる可能性があります——発話と照らすと即座に気づかれます。
- 重複排除。 3秒間画面に残る字幕は、サンプリングされた数十フレームに現れ、それぞれがわずかに異なるOCR結果になります。これらを正しい継続時間の1つのきれいな行に統合することが、実際の難問です。
- 字幕とそれ以外の区別。 透かし、チャンネルロゴ、画面グラフィック、歌詞は、OCRエンジンにはすべてテキストに見えます。本物の字幕がどこにあるか分からなければ、出力はゴミ行だらけになります。
- CJKの精度。 中国語・日本語・韓国語の字幕——最も焼き込まれやすい言語——は、まさに汎用OCRの精度が最も大きく落ちる箇所です。
GeekLinkのバッチOCRは、この4つの壁を前提に設計されています。最初の動画で字幕領域を囲む枠を描くだけ——エンジンに字幕がどこにあり何を無視すべきかを伝える、一度きり10秒の作業——で、あとは無人で実行されます。1回の実行でMac上で50本以上の動画を連続処理し、各動画がタイミング付きSRTとして出力され、行ごとの信頼度も付くので、どこを再確認すべきか分かります。 詳しいワークフローは焼き込み字幕OCRガイドにあります。
APIのないMacアプリが、自動化ワークフローにどう組み込まれるのか?
エージェント駆動のパイプラインを組む人からのもっともな疑問:GeekLinkはコマンドラインツールではなくMacアプリなのに、どうやってスクリプトと連携するのか。
統合の取り決めはファイルシステムです。ファイルをフォルダーに入れ、標準的なSRTファイルが出てきて、その間のすべてが無人で実行されます。 具体的には:
- 入力側: 監視フォルダーはそこに入ったものを何でも受け付け(音声認識と翻訳向け)、バッチ取り込みはフォルダー全体を一度に受け付けます(OCRとその他すべて向け)。
- 出力側: 書き出しは標準的なSRT(TXTの文字起こしや字幕焼き込み済み動画も)。SRTは安定した数十年来の形式のプレーンテキストで——下流のあらゆるスクリプト・エディター・翻訳工程・AIエージェントが解析できます。ロック解除が必要な独自のプロジェクトファイルはありません。
制限について正直に言うと:GeekLinkには現時点で公開されたCLIやHTTP APIはありません。 フォルダーベースの自動化は、個人の制作者や小規模チームが実際に運用する無人バッチのユースケースをカバーします。プログラムによる制御があなたのワークフローに重要なら、GeekLink Discordで教えてください——実際のワークフローを聞くことが、私たちの優先順位付けの方法です。
完全なローカル字幕パイプラインとはどんなものか?
各要素を組み合わせると、どんな動画の組み合わせでも完全に端末上で処理できる、次のようなパイプラインになります:
- 字幕の種類で仕分ける。 各ファイルを確認します。プレーヤーが字幕トラックを表示するか(切り替え可能)、焼き付けられたテキストが見えるか(焼き込み)、どちらでもないか(音声)。最初の確認はエージェントが
ffprobeで自動化でき、残りの2つは2秒見れば分かります。 - 切り替え可能なトラック → ffmpeg。 ファイルごとにスクリプト化したコマンド1つで完了。
- 字幕なし → 監視フォルダー。 ファイルを入れるだけ。選んだ元言語と目的言語で、認識と翻訳が無人で実行されます。
- 焼き込み → GeekLinkのバッチOCR。 バッチを取り込み、字幕枠を一度描いて実行。1パスで50本以上。
- SRT出力を集める。 3つの経路すべてがタイミング付きSRTファイルに収束し、次に来るもの——翻訳、編集、例文マイニング、再埋め込み、公開——の準備が整います。
設計原則:1つのツールにすべてをやらせるのではなく、各動画を適切な抽出ツールに振り分けることで自動化する。 ffmpegはトラック抽出で無敵、Whisperベースの認識は音声を扱い、専用OCRは焼き込みテキストを扱います。SRT形式こそが、それらを組み合わせられるようにするものです。
自動化にまだ人間が必要なのはどこか?
無人のパイプラインは字幕を生成しますが、それが正しいことを保証しません。名前、専門用語、重なり合う発話、大音量の音楽の下にあるものは、認識エラーが集中する箇所です——そして完全自動化されたパイプラインは、それらのエラーを翻訳や公開動画へ嬉々として伝播させます。
スケールする解決策は、すべての行を読むことではありません——どの行が間違っていそうかをパイプラインに印付けさせ、人間のレビュー工程を、文字起こし全体から絞り込んだリストへ縮小することです。 GeekLinkは認識エンジンの単語ごとの信頼度を読み取り、各行で最も信頼度の低い単語に加え、音楽に覆われたセグメントに印を付け、無料のSubtitle Edit向けにレビューパックを書き出します。端から端までのレビューワークフローはAIが間違えた行を見つけるで扱っています。
費用面では、上記の自動化パイプラインはお試しならGeekLinkの無料プランで動きます。フルのバッチ利用は年間$99(月あたり約$8.25)または買い切り$169で、どちらもAI翻訳クレジット100万分を含みます。要件:macOS 13.0以降、Apple Silicon(M1〜M4)。
FAQ
Macで動画から字幕を自動的に抽出できますか?
はい。ただし方法は字幕の種類によります。切り替え可能な字幕トラックは無料のffmpegコマンド1つで抽出できます。字幕のない動画にはローカルの音声認識が必要です(スクリプト化できるWhisper、または翻訳付きノーコード版としてGeekLinkの監視フォルダー)。焼き込み字幕には専用のOCRが必要です——GeekLinkは1回の実行でローカルに50本以上の動画をバッチ処理します。
Claude CodeのようなAIエージェントは動画から字幕を抽出できますか?
部分的には可能です。AIコーディングエージェントはffmpegをスクリプト化して切り替え可能な字幕トラックを取り出し、Whisperを実行して音声をテキスト化できます——どちらもエージェントがうまく操作できるコマンドラインツールです。エージェントがMac上で確実にスクリプト化できないのは焼き込み字幕のOCRです。保守されたオープンソースのパイプラインが存在しないためです。現実的な分担:エージェントにトラックと音声を任せ、焼き込み動画は共有フォルダー経由でバッチOCRツールに振り分けます。
GeekLinkには自動化用のCLIやAPIがありますか?
いいえ——GeekLinkには現時点で公開されたコマンドラインインターフェースやAPIはありません。その自動化モデルはフォルダーベースです。監視フォルダーが投入されたどんな動画も自動で文字起こし・翻訳し、バッチ取り込みは1回のOCR実行で50本以上を処理し、すべての出力はスクリプトが受け取れる標準的なSRTです。ワークフローにプログラム制御が必要なら、Discordで教えてください——実際のユースケースがロードマップを動かします。
多数の動画から焼き込み字幕を一括抽出するには?
ファイルごとのスクリプト化ではなく、バッチOCRツールを使います。GeekLinkではフォルダー全体を取り込み、字幕領域を囲む枠を一度描けば、バッチがMac上で無人実行されます——1パスで50本以上、各動画がレビュー用の行ごと信頼度付きのタイミング付きSRTとして書き出されます。
自動化した字幕抽出はプライバシーが守られますか?動画はアップロードされますか?
本ガイドのパイプラインはローカルです。ffmpeg、Whisperの認識、GeekLinkのOCRはすべて自分のMac上で動き、動画はどこにもアップロードされません。唯一のオプションのクラウド工程はAI翻訳です——有効にした場合、(動画ではなく)字幕テキストが、選んだ翻訳モデル(Claude 3.5 Haiku、GPT-4o、GPT-4o mini、DeepSeek)に送信されます。
自動化した字幕パイプラインはどの出力形式を使うべきですか?
SRTです。プレーンテキストで、事実上あらゆるエディター・プレーヤー・プラットフォーム・翻訳ツールに対応し、スクリプトやAIエージェントにとって解析が容易です。どの抽出ツールを使うにせよ、交換フォーマットとしてタイミング付きSRTに収束させ、必要なら最終工程でだけプラットフォーム固有の形式(VTT、ASS)に変換してください。
開示:GeekLinkは当社自身のMacアプリです。ここで説明した監視フォルダー、バッチOCR、信頼度の印付け、翻訳機能はGeekLinkの機能です。ffmpegとWhisperは当社とは提携関係のない独立したオープンソースプロジェクトで、それ自体の利点に基づいて推奨しています。