babelscribe について
babelscribeは、音声や動画を自分のコンピューター上で文字起こししたい人向けのオフラインツールです。Whisperの99言語に対応し、whisper.cppを通じてGPUまたはCPUで動作し、コマンドライン、Python、MCPから利用できます。
主な機能
- 01音声と動画をオフラインで文字起こし
- 02SRT、VTT、テキストを出力
- 03Whisperの99言語に対応
- 04AMD、NVIDIA、Intel、AppleのGPUまたはCPUを使用
- 05ローカルのメディアファイルを検索
- 06コマンドライン、Python、MCPから利用
活用シーン
- 01ローカル動画から字幕を作成
- 02音声をアップロードせずに文字起こし
- 03AIアプリから最近のメディアを検索して文字起こし
- 04校正、翻訳、要約用のテキストを生成
MCP 対応
babelscribeは、ローカルでの文字起こし、メディア検索、デバイス一覧、言語とモデル一覧のツールをMCPクライアントに公開します。サーバーはユーザーのコンピューター上で動作し、ローカルファイルと利用可能なGPUにアクセスします。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
4掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| formats | string | いいえ | |
| accurate | boolean | いいえ | |
| language | string | いいえ | |
| file_path | string | はい | |
| output_dir | string | いいえ |
詳細
babelscribe — あらゆる GPU(AMD、NVIDIA、Intel、Apple)で使える無料・オフラインの音声テキスト変換と字幕作成
babelscribe は、Whisper の 99 言語のいずれかで、あらゆる音声・動画ファイルを字幕(SRT、VTT)とテキストに変換します。AMD Radeon、NVIDIA、Intel Arc、Apple Silicon の GPU、または CPU で動作します。CUDA は不要で、クラウドも不要、無料(MIT)です。 OpenAI Whisper を whisper.cpp 経由で Vulkan、CUDA、または Metal を使って実行し、コマンドライン、Python、または AI アプリ(Claude、Codex、Antigravity、Gemini CLI、Cursor)から MCP サーバーとして利用できます。
pip install babelscribe # Python 3.9+
babelscribe interview.mp4 # auto-detects language, picks your best GPU -> interview.srt + interview.json
babelscribe は whisper.cpp を使いやすくする軽量なレイヤーです。NVIDIA 以外のカード(たとえば Windows の AMD Radeon)で高速な Whisper を使うには、今でも whisper.cpp を自分で Vulkan SDK とともにビルドする必要があるため、作成されました。babelscribe は、お使いのシステム用のビルド済み whisper-cli をダウンロードし、残りの処理を行います。
| お使いのハードウェア | 使用するバックエンド | ビルド済みアセット |
|---|---|---|
| Windows の AMD / NVIDIA / Intel GPU | Vulkan | windows-x64-vulkan |
| Windows の NVIDIA | Vulkan(同じビルド) | windows-x64-vulkan |
| Linux の NVIDIA(代替) | CUDA | linux-x64-cuda(--flavor cuda) |
| Linux の AMD / NVIDIA / Intel GPU | Vulkan | linux-x64-vulkan |
| Apple Silicon | Metal | macos-arm64-metal |
| 使用可能な GPU がない場合 | CPU | *-cpu(--flavor cpu) |
19 分の英語 TED トークは、AMD Radeon RX 9070 XT で 48 秒、単語誤り率 1.5% で文字起こしできます。以下のベンチマークをご覧ください。
AI アプリから使う(MCP) — ターミナル不要
babelscribe は MCP サーバーでもあるため、ローカル MCP サーバーに対応する AI アプリなら、あなたのコンピューター上のファイルをあなたの GPU で文字起こしできます。自然な言葉で依頼するだけです。*「ダウンロードフォルダーにある最新の動画にタイ語の字幕を付けて」*と頼むと、アプリがファイルを見つけて文字起こしし、同じ場所に .srt / .txt を作成します。その後、名前の校正や、テキストの翻訳・要約もできます。
ツール:transcribe(ファイル → 字幕 + テキスト)、find_media(Downloads、Videos、Desktop などにある最新の音声・動画)、list_devices、list_languages_and_models。
Claude Desktop(ワンクリック): 最新リリースから babelscribe.mcpb をダウンロードしてダブルクリックします(または Settings → Extensions → Install extension)。
それ以外のすべてでは同じコマンドを実行します。uv が babelscribe を取得します。
uvx babelscribe mcp
| アプリ | 追加方法 |
|---|---|
| Claude Code | claude mcp add babelscribe -- uvx babelscribe mcp |
| OpenAI Codex CLI | codex mcp add babelscribe -- uvx babelscribe mcp を実行し、続いて ~/.codex/config.toml の [mcp_servers.babelscribe] の下に tool_timeout_sec = 3600 と startup_timeout_sec = 120 を設定します(デフォルトは 60 秒 / 10 秒で、長い動画や初回のモデルダウンロードには短すぎます)。 |
| Google Antigravity | エージェントパネル → ⋯ → MCP Servers → Manage MCP Servers → View raw config を開き、以下の JSON を追加します |
| Gemini CLI | 以下の JSON を ~/.gemini/settings.json に追加します |
| Cursor | 以下の JSON を ~/.cursor/mcp.json に追加します |
| VS Code (Copilot) | .vscode/mcp.json の "servers" の下に、"type": "stdio" を含む同じエントリを追加します |
{
"mcpServers": {
"babelscribe": { "command": "uvx", "args": ["babelscribe", "mcp"], "timeout": 3600000 }
}
}
(timeout の単位はミリ秒で、一部のアプリのみが読み取ります。)pip でインストール済みの場合は、"command": "babelscribe", "args": ["mcp"] を使います。
Web 専用のチャットアプリ(例:grok.com、chatgpt.com)がアクセスできるのはインターネット上のサーバーだけで、あなたのコンピューターにはアクセスできないため、GPU やファイルを利用できません。
ベンチマーク:実際のトークを、正解として人間の字幕と比較
4つのTED/TEDxトークを、話されている言語の人間が作成した字幕(bench/bench.py、再現可能)と比較して評価します。
誤り率は、スペースで区切る言語では単語誤り率(WER)、日本語とタイ語では文字誤り率(CER)です。
GPU:Vulkan経由のAMD Radeon RX 9070 XT。default は large-v3-turbo、accurate は --accurate(FLEURSのセクションを参照)です。
| 言語 | トーク | 長さ | default:時間/誤り率 | --accurate:時間/誤り率 |
|---|---|---|---|---|
| 英語 | Matt Walker — Sleep Is Your Superpower (TED) | 19.3 min | 48 s (24x) · WER 1.5% | 107 s (11x) · WER 1.5% |
| 日本語 | Kazunari Taguchi (TEDxHimi) | 16.2 min | 47 s (20x) · CER 4.7% | 115 s (8x) · CER 4.2% |
| スペイン語 | Adrià Solà Pastor — Cómo hablar (TEDxESIC University) | 19.9 min | 56 s (21x) · WER 13.8% | 134 s (9x) · WER 13.5% |
| タイ語 | นิติ ชัยชิตาทร — โปรดเรียกฉันด้วยนามอันแท้จริง (TEDxBangkok) | 14.1 min | 74 s (12x) · CER 22.7% | 565 s (2x) · CER 16.4% |
見方:TEDの字幕は読みやすさを考慮して編集されているため(フィラーの削除、軽微な言い換え)、これらの数値は上限値です。スペイン語の「誤り」の大半は、話者が実際に話した言葉と整えられた字幕との差です。タイ語は実際に難易度が高く、スラングを含む速くくだけた話し方が特徴です。--accurate(Pathumma Whisperのテキスト+turboのタイミング調整)では、誤りが4分の1以上減少します。
トークは精度の測定にのみ使用しており、文字起こしは再配布していません(TEDのコンテンツはCC BY-NC-NDです)。
ベンチマーク:FLEURSの16言語
Google FLEURSのテストセットを使用。各言語につき50件の発話があり、人間が逐語的に確認した文字起こしが付いています(bench/fleurs.py、再現可能)。すべての言語で同じ正規化処理を使用します(Whisperのルール:小文字化、句読点と結合文字の削除、数字の綴り出し)。スペースで区切る言語ではWER、ja/zh/ko/thではCERです。
| 言語 | default (turbo) | --accurate | --accurateで使用するモデル | --accurate、端をトリミング* |
|---|---|---|---|---|
| 英語 | 6.1% | 5.7% | large-v3, beam 5 | 5.6% |
| スペイン語 | 4.1% | 4.2% | large-v3, beam 5 | 2.6% |
| フランス語 | 7.4% | 7.3% | large-v3, beam 5 | 7.2% |
| ドイツ語 | 4.3% | 4.0% | large-v3, beam 5 | 3.3% |
| ポルトガル語 | 8.5% | 7.7% | large-v3, beam 5 | 5.3% |
| イタリア語 | 6.7% | 6.5% | large-v3, beam 5 | 3.8% |
| ロシア語 | 6.8% | 5.8% | large-v3, beam 5 | 5.6% |
| アラビア語 | 11.0% | 10.6% | large-v3, beam 5 | 9.7% |
| ヒンディー語 | 28.4% | 12.6% | vasista22/whisper-hindi-large-v2 + turboのタイミング調整 | 11.1% |
| インドネシア語 | 9.8% | 7.8% | large-v3, beam 5 | 5.6% |
| ベトナム語 | 10.8% | 9.1% | large-v3, beam 5 | 9.1% |
| トルコ語 | 6.2% | 6.7% | large-v3, beam 5 | 5.8% |
| 日本語(CER) | 6.4% | 5.7% | large-v3, beam 5 | 4.6% |
| 中国語(CER) | 6.3% | 5.3% | large-v3, beam 5 | 4.8% |
| 韓国語(CER) | 4.1% | 3.9% | large-v3, beam 5 | 3.1% |
| タイ語(CER) | 15.9% | 8.9% | Pathumma Whisper (NECTEC) + turboのタイミング調整 | 8.8% |
* FLEURSのクリップには、参照用の文字起こしより多くの発話が含まれるものがあり、その場合、正しいモデルでも参照にない単語が誤りとして数えられます。端をトリミングした値では、参照の最初の単語より前/最後の単語より後にある余分な単語を無視します。どちらの値もbench/fleurs.pyに保存されています。各言語50件の発話では、約0.5ポイント未満の差は誤差の範囲です。
large-v3と同等かそれ以上の性能だったため採用しなかったモデルも測定しました:large-v2(全言語)、PhoWhisper-large(vi 19.0%)、アラビア語の方言/コードスイッチングに対応するwhisper-large-v3のファインチューニングモデル(12.2%/15.2%)、Typhoon Whisper(th 11.9%)、Thonburian Whisper(th 9.1% — 選択肢として維持)、Vaani Hindi(16.5%)。
babelscribe を選ぶ理由(既存の選択肢との比較)
| AMD/Intel GPU | Windows でビルド不要 | 動画入力、字幕出力 | 長時間ファイルで繰り返さない | 使用言語に合わせてテキストを改善 | |
|---|---|---|---|---|---|
| babelscribe | ✅ Vulkan | ✅ ビルド済みの whisper-cli を自動ダウンロード | ✅ ffmpeg を同梱 | ✅ デフォルトで --max-context 0 | ✅ ハイブリッドのファインチューニング済みテキスト+高速なタイミング処理 |
| whisper.cpp(そのまま) | ✅ Vulkan — 自分でコンパイルすれば利用可能 | ❌ 公式リリースには Windows 向け Vulkan ビルドがない | ❌ 16 kHz の WAV のみ | ⚠️ フラグを把握しておく必要がある | ❌ |
| faster-whisper / WhisperX | ❌ GPU は NVIDIA CUDA のみ | ✅ pip | ✅ | ⚠️ | ⚠️ 手動 |
| クラウド API | 該当なし(クラウド) | ✅ | ✅ | ✅ | ❌ — 音声が端末の外部に送信され、分単位で課金されます |
babelscribe は、これらのプロジェクトに取って代わるものではありません。whisper.cpp を基盤とし、GPU 向けのコンパイル、メディアの変換、適切なデバイスの選択、長時間ファイルで繰り返しが発生する不具合の回避、言語固有のファインチューニングと正確なタイムスタンプの組み合わせといった難しい部分を取り除きます。
よくある質問
Windows で AMD GPU を使って Whisper を実行するには?
pip install babelscribe を実行し、続けて babelscribe video.mp4 を実行します。Windows と Linux で AMD Radeon(および Intel Arc/NVIDIA)カード上で動作する whisper.cpp の Vulkan ビルドがダウンロードされます。ROCm、CUDA、コンパイルは不要です。
動画から無料でオフラインの字幕(SRT)を作成するには?
babelscribe video.mp4 -f srt を実行すると、動画と同じ場所に video.srt が出力されます。何もアップロードされず、手元のコンピューターで処理されます。
タイ語の文字起こしで、無料で最も精度が高い方法は?
babelscribe video.mp4 -l th --accurate を実行します。テキストには Pathumma Whisper(NECTEC)を、タイミング処理には Whisper turbo を使います。Google FLEURS での CER は 8.9%で、Whisper turbo 単体の 15.9%より低くなっています。Thonburian Whisper も利用できます(--text-model thai-thonburian)。
Claude/ChatGPT Codex/Gemini は、手元のコンピューター上の動画を文字起こしできますか?
はい。babelscribe を MCP サーバーとして追加します(AI アプリから使用するを参照)。Claude Desktop では babelscribe.mcpb からワンクリックでインストールできます。その後、AI アプリでファイルを探し、GPU 上で文字起こしをして、テキストの校正、翻訳、要約ができます。
処理速度はどれくらいですか? AMD Radeon RX 9070 XT で Whisper large-v3-turbo を使う場合、リアルタイムの約 20 倍です。19 分の講演を 48 秒で処理できます。
対応言語は? Whisper が対応する 99 言語すべてに対応し、言語を自動検出します。ベンチマーク表には、そのうち 16 言語の FLEURS エラー率を記載しています。
faster-whisper や WhisperX より優れていますか? NVIDIA GPU ではどちらも優れていますが、AMD/Intel GPU では CPU に切り替わります。babelscribe は、どの GPU でもセットアップ不要で使え、コミュニティによるファインチューニングでタイ語/ヒンディー語の精度を高められる点が特長です。NVIDIA カードをお持ちで Python を使いたい場合は、faster-whisper も良い選択肢です。
言語
Whisper の学習対象となった 99 言語すべてに対応しており、自動検出するか、-l で指定できます。
af am ar as az ba be bg bn bo br bs ca cs cy da de el en es et eu fa fi fo fr gl gu ha haw he hi hr ht hu hy id is it ja jw ka kk km kn ko la lb ln lo lt lv mg mi mk ml mn mr ms mt my ne nl nn no oc pa pl ps pt ro sa sd si sk sl sn so sq sr su sv sw ta te tg th tk tl tr tt uk ur uz vi yi yo yue zh
精度は Whisper 自身の学習データに左右されます。英語、スペイン語、日本語など、リソースの豊富な言語では優れていますが、リソースの少ない言語では精度が下がります。そのためにハイブリッドモードがあります。コミュニティによる言語別のファインチューニングモデルを、babelscribe/models.py に 1 行追加するだけで組み込めます(現在はタイ語とヒンディー語に対応)。ほかの言語のファインチューニングモデルを追加する PR は、特に価値の高い貢献です。
制限事項(正直な説明)
- これまでに一連の動作を確認できているのは、AMD Radeon RX 9070 XT(Windows、Vulkan)です。CUDA、Linux、macOS 向けのビルドは CI で作成されています。これらの環境からの報告も歓迎します。
- ハイブリッドモードでは 2 つのモデルを実行するため、処理が遅くなります(この GPU で大規模なファインチューニングモデルを使う場合、音声 1 分あたり約 1 分)。
- 固有名詞のスペルを間違えることがあります。字幕を公開する前に、名前を確認してください。
機能
- あらゆる入力形式に対応 — mp4、mkv、mov、mp3、wav、m4a など(ffmpeg は
imageio-ffmpegを通じて同梱されています)。 - あらゆる言語に対応 —
-l autoで言語を検出します。または-l th、-l ja、-l esなどを指定できます。 - 最適な GPU を選択 — 内蔵 GPU よりもディスクリート GPU を優先します。
babelscribe devicesで一覧を表示でき、--device Nで変更できます。 - ループしない長時間ファイル処理 — whisper を
--max-context 0付きで実行し、長時間の録音で同じ文が延々と繰り返される典型的な幻覚を防ぎます。 - 言語に合わせたスペルを改善するハイブリッドモード — コミュニティによるファインチューニングモデル(例:タイ語の Thonburian Whisper)はスペルの精度が大幅に高い一方、タイムスタンプが失われることがよくあります。
--text-modelはファインチューニングモデルからテキストを取得し、large-v3-turboから取得したタイミング情報を文字単位で位置合わせします(スペースを使わない言語にも対応)。単語の境界でのみ区切り、ファインチューニングモデルが省略した単語はタイミングモデルで補います。 --accurate— 処理は遅くなりますが、エラーを最小限に抑えます。beam search を使う large-v3、またはタイ語とヒンディー語では最良のコミュニティファインチューニングモデル(ハイブリッド)を使用します。上記の FLEURS ベンチマークに基づき、言語ごとに選択されます。- カスタム語彙 —
--prompt "Pitakpong, babelscribe"を指定すると、名前や専門用語のスペルに影響を与える初期プロンプトを whisper に渡せます。MCP のtranscribeツールでは、同じ機能をvocabulary引数で指定できます。プロンプトが設定されている間は--max-context 0は渡されません(そうしないと whisper.cpp がプロンプトを無視するためです)。 - 出力形式 —
srt、vtt、txt、json(トークンごとのタイミングを含むセグメント)。
使い方
babelscribe talk.mp4 -f srt,vtt,txt,json # all formats
babelscribe podcast.mp3 -l en -m large-v3 # pick language and model
babelscribe talk.mp4 -l hi --accurate # slower, fewest errors (best model per language)
babelscribe vo.wav -l th --text-model thai-thonburian # hybrid: pick a Thai fine-tune yourself
babelscribe talk.mp4 --prompt "Pitakpong, babelscribe" # bias the spelling of names and terms
babelscribe devices # GPUs whisper.cpp can see
babelscribe models # models and fine-tunes
babelscribe talk.mp4 --bin /path/to/whisper-cli # use your own whisper.cpp build
Python から:
from babelscribe.api import transcribe_file
r = transcribe_file("talk.mp4", lang="auto", formats=["srt", "txt"]) # or accurate=True, prompt="names, terms"
print(r["lang"], r["device"], r["files"]); print(r["text"][:200])
モデルは初回使用時に ~/.babelscribe/models にダウンロードされます(変更するには BABELSCRIBE_MODELS を設定します)。ハイブリッド用ファインチューニングモデルは、元の Hugging Face リポジトリからお使いのマシン上で変換されます。一度 pip install "babelscribe[finetune]" を実行してください。変換後の重みは再配布されないため、各ファインチューニングモデルのライセンスはそれぞれ維持されます。タイ語の単語境界処理には、pip install "babelscribe[thai]" を実行してください。
ロードマップ
今後予定している内容(字幕行の折り返し、長時間ファイル向けの MCP 進捗表示、フォルダ単位の一括処理、英語への翻訳、ファインチューニングモデルの追加)は、ROADMAP.md と未解決の issueをご覧ください。
言語のファインチューニングモデルを追加する
babelscribe/models.py の FINETUNES に、Hugging Face リポジトリ、言語コード、beam search が必要かどうかを含むエントリーを 1 つ追加し、PR を作成してください。
ビルド済みバイナリ
.github/workflows/build-binaries.yml は、上記の表の各行について whisper-cli と whisper-quantize をビルドし、各 v* リリースに添付します。セルフホストするには、BABELSCRIBE_RELEASES に別の URL を指定してください。
タイ語
コマンドを入力せずに Claude Desktop から使えます。Releases ページから babelscribe.mcpb をダウンロードしてダブルクリックし、チャットで 「ダウンロードフォルダにある最新の動画にタイ語の字幕を付けて」 と入力してください。
あらゆる言語の音声・動画ファイルを、あらゆるメーカーの GPU(Vulkan 経由の AMD/NVIDIA/Intel、Metal 経由の Apple)または CPU で文字起こしできます。
タイ語には babelscribe ไฟล์.mp4 -l th --accurate をおすすめします。FLEURS で最も誤りの少ない Pathumma Whisper(NECTEC)のテキスト(CER 8.9%、turbo は 15.9%)と、large-v3-turbo のタイミング情報を組み合わせます。
または、--text-model thai-thonburian で Thonburian Whisper を指定できます。
プライバシーポリシー
babelscribe はお使いのコンピューター上ですべての処理を行います。最終更新日:2026-10-06。
- **データ収集:**ありません。babelscribe はテレメトリー、分析、アカウント、クラッシュレポートを一切使用せず、音声、動画、文字起こし、ファイル名をどこかにアップロードすることもありません。
- **処理内容と場所:**選択したメディアファイルはローカルで変換・文字起こしされ、字幕とテキストはディスクに書き込まれます(ファイルと同じ場所、または選択したフォルダー)。MCP を通じて、文字起こしテキストはツールを呼び出した AI アプリに返されます。そのアプリによるテキストの取り扱いは、アプリ独自のプライバシーポリシーに従います。
- **ネットワークアクセス(ダウンロードのみ):**初回使用時に、このプロジェクトの GitHub リリースから
whisper-cliプログラムを、Hugging Face から音声モデル(huggingface.co/ggerganov/whisper.cpp、および--accurateで使用するタイ語/ヒンディー語モデルについては、そのファインチューニングモデル独自のリポジトリ)をダウンロードします。また、pip/uv でインストールした場合は、PyPI から Python パッケージをダウンロードします。これらは通常のダウンロードであり、個人データは送信されません。GitHub、Hugging Face、PyPI には、それぞれのプライバシーポリシーに基づいて、通常のダウンロードリクエスト(IP アドレス、ユーザーエージェント)が通知されます。 - **保存と保持:**ダウンロードしたプログラムとモデルは、削除するまで
~/.babelscribe(またはBABELSCRIBE_HOME/BABELSCRIBE_MODELS)にキャッシュされます。出力ファイルは、削除するまで書き込まれた場所に残ります。babelscribe がその他のデータを保持することはありません。 - **第三者との共有:**ありません。
- **お問い合わせ:**https://github.com/phonology024/babelscribe/issues で Issue を作成してください。
クレジットとライセンス
MIT。 whisper.cpp(MIT)と OpenAI Whisper モデル(MIT)をベースに構築されています。 ファインチューニングモデルは各作者に帰属します:Pathumma Whisper(NECTEC)、Thonburian Whisper(biodatlab)、whisper-hindi-large-v2(vasista22、IIT Madras の Speech Lab)。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。