VoiceStudio:完全ローカルで動作するオープンソースのElevenLabs代替
VoiceStudioは、16種類のTTSエンジンと11種類のASRエンジンを使い、音声クローン、吹き替え、ディクテーション、文字起こし、オーディオブック制作を自分のハードウェア上で実現します。
VoiceStudio:完全ローカルで動作するオープンソースのElevenLabs代替
クラウド音声プラットフォームは便利ですが、継続的なコスト、利用制限、アカウント要件、そしてプライベートな録音には適さない可能性のあるデータ経路も伴います。VoiceStudioは正反対のアプローチを取ります。音声クローン、音声デザイン、動画吹き替え、ディクテーション、文字起こし、長時間音声制作のための、オープンソースのデスクトップおよびローカルサーバーアプリケーションです。
このプロジェクトは、16種類の音声合成エンジン、11種類の音声認識エンジン、最大646種類のTTS言語をカバーするカタログをサポートしています。macOS、Windows、Linux、Dockerで動作し、CUDA、Apple SiliconのMPS/MLX、Linux ROCm、CPU推論、オプションのリモートワーカーに対応しています。
その結果は、単一の音声生成モデルというより、ローカルで動作する音声制作プラットフォームに近いものです。タスクごとにエンジンを選択し、プロジェクトデータをディスク上に保持し、OpenAI互換APIを公開したり、MCP経由でAIエージェントに接続したりできます。
VoiceStudioは開発中のベータ版です。安定した作業には最新リリースを使用してください。
mainブランチはリリース間で変更される可能性があります。
ローカル音声生成が重要な理由
ホスティング型音声サービスは通常、モデル、GPU、スケーリング、更新を代わりに管理してくれます。そのためセットアップは簡単ですが、音声とテキストがプロバイダーによって処理され、コストが利用量に応じて増加することを意味します。VoiceStudioでは、こうしたトレードオフを自分のマシンに移します。
| 懸念事項 | VoiceStudio | 一般的なホスティング型サービス |
|---|---|---|
| データ経路 | デフォルトではローカル。リモート機能はオプトイン | 音声とテキストはプロバイダーが処理 |
| コスト | ソフトウェアは無料。ハードウェアは自分で用意 | サブスクリプション、クレジット、従量制API利用 |
| オフライン利用 | モデルのインストール後は可能 | 通常はインターネット接続が必要 |
| カスタマイズ性 | オープンソース、複数エンジン、ローカルルーティング | プロバイダーの選択肢に限定 |
| パフォーマンス | ハードウェアとエンジンに依存 | プロバイダーが計算資源とスケーリングを管理 |
| メンテナンス | モデル、更新、ディスク、計算資源を自分で管理 | プロバイダーがインフラを管理 |
そのため、プライベートな録音、社内アプリケーション、大量生成、オフラインワークフロー、モデル選択を管理したい開発者に特に適しています。
VoiceStudioで構築できるもの
VoiceStudioは、機能を複数の制作ワークフローに分けています。
音声クローンとデザイン
Voiceワークスペースには、主に3つのモードがあります。
- 音声から — 短い参照クリップから音声をクローンします。
- デザインで — 年齢、アクセント、ピッチ、スタイル、話し方などの属性から音声を作成します。
- 変換 — 音声から音声への変換を行います。
ゼロショット・クローンでは3秒のクリップでも機能しますが、一般的には5~15秒のほうがより良いプロンプトになります。参照音声には1人の話者だけが含まれ、ノイズ、音楽、残響は最小限であるべきです。クリップは学習データではなくプロンプトとして機能するため、長ければ自動的に良い結果になるわけではありません。
最初の生成は通常、次のように行います。
- VoiceStudioを起動し、Voice Cloningを開きます。
- クリアな参照録音を追加します。
- 合成するテキストを入力します。
- 言語と音声プロファイルを選択します。
- Generateを選択します。
音声クローンは、必ず話者の明示的な許可を得て行ってください。
動画吹き替え
吹き替えワークフローでは、動画の文字起こし、台詞の翻訳、話者割り当ての維持、新しい音声の合成、完成動画の書き出しが可能です。ファイルのアップロードとURLのインポート、字幕、オプションのYouTubeサインイン、文字起こし編集、用語集、トラック選択、タイミング確認に対応しています。
エディターは、波形と時間情報付き文字起こしを1つのワークスペースに統合します。波形をクリックしてシークしたり、ズームした波形をドラッグして移動したりできます。翻訳言語とISOコードのコントロールは同期され、文字起こしセグメントにはテキスト、タイミング、ステータス、音声コントロールが表示されます。
完成した吹き替えでは、書き出し前にタイミングの問題を確認できるようフラグを付けられます。参照話者の保持が必要なワークフローでは、クローン非対応エンジンは拒否され、別のエンジンに黙って切り替えられることはありません。
オーディオブックと長時間音声
オーディオブックエディターは、複数音声のスクリプト、EPUBおよびPDFのインポート、章ごとのレンダリング、.m4bへの書き出しに対応しています。スクリプトエディターはメインワークスペースを占有し、音声の割り当てと本の設定は別タブに配置されます。そのため、テキスト編集と制作設定を混在させずに長いプロジェクトを管理できます。
ディクテーションと文字起こし
VoiceStudioには、グローバルショートカット、ライブ文字起こし、オプションのローカルLLMによるクリーンアップに対応した、システム全体で使えるディクテーションウィジェットが含まれています。音声認識では、WhisperX、Faster-Whisper、MLX Whisper、Parakeet、Moonshine、FunASR、Sherpa-ONNX、設定済みのOpenAI互換サーバーから選択できます。
WhisperXは、吹き替え、字幕、単語単位のタイミング、話者分離に適したデフォルトの選択肢です。Apple SiliconユーザーはMLX WhisperまたはParakeet MLXを使用でき、CPUのみのシステムでは、メモリ使用量を抑えるためにMoonshineまたはint8 Faster-Whisperを利用できます。
その他のメディアツール
このプラットフォームには、次の機能も含まれています。
- Demucsによるボーカル分離
- PyannoteとWhisperXによる話者分離
- 音声および動画ジョブ用のバッチキュー
- 新しく追加された動画を検出するフォルダー監視
- AudioSealによるAIウォーターマークの埋め込みと検出
- 登録済みワーカー向けのリモートモデルダウンロード
- エンジンのインストール、削除、ルーティングに対応したモデルカタログ
インストール方法
このプロジェクトは、macOS、Windows、Linux向けのパッケージ済みリリースに加え、Dockerイメージも提供しています。
| プラットフォーム | パッケージまたは要件 |
|---|---|
| macOS | Apple Silicon、macOS 13.3以降、DMG |
| Windows | Windows 10/11 x64、MSI。現在のユーザー向けインストールも利用可能 |
| Linux | glibc 2.39以降のx86_64、AppImage |
| Docker | CUDA、ROCm、CPU、ワーカー専用GPUプロファイルに対応したLinux/AMD64イメージ |
初回起動時に、VoiceStudioは管理対象のPython環境を作成し、デフォルトモデルをダウンロードします。以降の起動では、その環境とモデルキャッシュが再利用されます。
Dockerでは、公開イメージはlinux/amd64のみです。
docker run -d \\
-p 127.0.0.1:3900:3900 \\
-v omnivoice-data:/app/omnivoice_data \\
--name voicestudio \\
palashdeb/omnivoice-studio:stable
Apple Siliconユーザーは、GPUアクセラレーションのため、通常はネイティブのmacOSアプリケーションを使用してください。ARM64ホストでは、コンテナイメージを取得する前にアーキテクチャ要件を確認してください。
ソースから実行する
開発にはNode 20以降、Bun、Python 3.11以降が必要です。
git clone https://github.com/debpalash/VoiceStudio.git
cd VoiceStudio
bun install
bun run desktop
デスクトップランチャーは、uvを通じてPython依存関係を自動設定します。代わりにブラウザーUIを実行するには、次のコマンドを使います。
bun run dev
起動に失敗した場合は、Settings → About → Run self-checkから組み込みの診断を実行するか、次のコマンドを実行してください。
uv run python backend/main.py --diagnose --deep
ハードウェアとエンジンの選択
VoiceStudioはCPU動作に対応していますが、GPUを使うと生成速度を大幅に向上できる場合があります。プロジェクトでは、デフォルトのローカルワークフローについて次の最低要件を示しています。
| リソース | 最低要件 | 推奨 |
|---|---|---|
| RAM | 8 GB | 16 GB以上 |
| 空きディスク容量 | 10 GB | SSD上で20 GB以上 |
| VRAM | GPU使用時4 GB | 8 GB以上 |
| Python | 3.11以降 | 3.11または3.12 |
大規模なオプションエンジンでは、12~16 GB以上のVRAMが必要になる場合があります。ROCmはLinux専用で、オプトイン方式です。WindowsのAMD/Ryzen AIシステムではCPU推論を使用します。VRAMが限られたシステムでは、処理をCPUにオフロードできます。
推奨される組み合わせには次のものがあります。
- Apple Silicon M1~M4: MPSを使用するMLX-AudioまたはOmniVoice。ASRにはMLX WhisperまたはParakeet MLX。
- VRAM 8 GB以上のNVIDIA GPU: OmniVoiceまたはCosyVoice 3。文字起こしと話者分離にはWhisperX。
- 低VRAMまたはCPUのみ: PocketTTS、Sherpa-ONNX、KittenTTS。ASRにはMoonshineまたはint8 Faster-Whisper。
エンジンカタログには、OmniVoice、CosyVoice 3、GPT-SoVITS、VoxCPM2、MOSS-TTS、KittenTTS、MLX-Audio、Sherpa-ONNX、IndexTTS、PocketTTS、Supertonic、dots.tts、Confucius4-TTSが含まれています。機能には大きな違いがあります。音声クローンや指示ベースの合成に対応するものがある一方、CPUに特化したものや、特定の言語に限定されたものもあります。
本番環境で使用する前に、エンジンの言語対応範囲、プラットフォーム対応、メモリ要件、クローン機能、モデルライセンスを必ず確認してください。
ローカルAPIとOpenAI互換性
デスクトップアプリケーションは、localhost:3900にバインドされたFastAPIバックエンドと通信します。バックエンドは、REST、Server-Sent Events、WebSockets、OpenAI互換の音声API、MCPサーバーを提供します。
OpenAIクライアントのベースURLをローカルバックエンドに変更します。
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:3900/v1",
api_key="local",
)
with client.audio.speech.with_streaming_response.create(
model="tts-1",
voice="<profile-id>",
input="Made on my own hardware.",
response_format="wav",
) as response:
response.stream_to_file("speech.wav")
cURLリクエストも同様に簡単です。
curl http://localhost:3900/v1/audio/speech \\
-H "Content-Type: application/json" \\
-d '{
"model": "tts-1",
"input": "Made on my own hardware.",
"voice": "default",
"response_format": "wav"
}' \\
--output speech.wav
主なエンドポイントは次のとおりです。
POST /v1/audio/speech— MP3、Opus、AAC、FLAC、WAV、PCM音声を生成します。POST /v1/audio/transcriptions— JSON、テキスト、詳細JSON、SRT、VTTを返します。WS /v1/audio/transcriptions/stream— 文字起こしの部分結果と最終結果のイベントをストリーミングします。GET /v1/audio/voices— ローカルの音声プロファイルとエンジンを一覧表示します。GET /.well-known/voicestudio-speech— 利用可能な音声トランスポートを検出します。
ループバック呼び出しにはサーバーキーは必要ありません。リモートアクセスには共有PINまたはAPIキーが必要です。LAN、Tailscale、プロキシによるデプロイでは、プロジェクトの認証ガイダンスに従ってください。
MCPとエージェント連携
VoiceStudioにはhttp://localhost:3900/mcpにMCPサーバーが組み込まれており、Claude Desktop、Cursor、その他のMCPクライアントから合成・文字起こしツールを呼び出せます。
{
"mcpServers": {
"voicestudio": {
"url": "http://localhost:3900/mcp"
}
}
}
stdioトランスポートが必要なクライアント向けに、リポジトリにはローカルシムが含まれています。
{
"mcpServers": {
"voicestudio": {
"command": "python",
"args": ["-m", "backend.mcp_shim"],
"cwd": "/path/to/VoiceStudio"
}
}
}
MCPツールにはgenerate_speech、clone_voice、transcribeがあり、ファイルストリーミングモードとクライアントバインディングに対応しています。Claude Code、Codex、Cursor、互換エージェント向けのプロジェクトスキルは、次のコマンドでインストールできます。
npx skills add debpalash/VoiceStudio
プライバシー、セキュリティ、ライセンス
デフォルトのデスクトップワークフローでは、録音、文字起こし、音声、プロジェクト、設定、出力がローカルマシンに保存されます。リモートワーカーとOpenAI互換ASRエンドポイントは明示的なオプトインです。ループバック以外のエンドポイントにはHTTPSが必要で、リダイレクトは追跡されません。
分析機能は同意するまで無効になっています。有効にした場合、許可リストに登録されたコンテンツを含まない利用メタデータのみを送信します。テキスト、音声、ファイル名、プロジェクトデータは送信されません。
VoiceStudioはAGPL-3.0でライセンスされています。実行、変更、社内利用が可能です。アプリケーションを変更してネットワークサービスとして提供する場合、AGPLの義務により、同じライセンスで対応するソースコードを提供する必要があります。VoiceStudio所有コードをプロプライエタリな形で組み込むための商用ライセンスもありますが、第三者モデルのライセンスを変更するものではありません。
モデルとトークナイザーの規約は別々です。たとえば、デフォルトのOmniVoiceセットアップにはCC-BY-NCと表示された事前学習済み重みと、追加の上流規約が適用される音声トークナイザーが含まれています。アプリケーションのライセンスによって、ダウンロードしたすべてのモデルの商用利用権が自動的に付与されるわけではありません。
このプロジェクトでは、可聴品質を変えずに合成音声を検出・識別できるよう、デフォルトでAudioSealウォーターマークも統合しています。
誰に適しているか?
VoiceStudioは、次のニーズがある場合に適しています。
- プライベートまたはオフラインでの音声生成
- リクエストごとの料金なしでの大量合成
- ローカル音声クローンと多言語吹き替え
- デスクトップワークフローとプログラム可能なAPI
- 1つのアプリケーションで複数のTTS・ASRエンジンを利用
- MCPによるコーディングエージェントとの連携
- モデルルーティング、ハードウェア、ストレージの管理
一方、設定不要のクラウドスケーリングを求める場合、ローカルのディスク容量や計算資源が不足している場合、またはすべてのモデルについて統一された商用ライセンスを持つ単一プロバイダーが必要な場合には、あまり適していません。
GitHubスター26.9k、フォーク3.3k、38回のリリース、活発な開発履歴を持つVoiceStudioは、単純な音声クローンデモを超えて成長しています。デスクトップツール、ローカルAPI、モデルルーティング、吹き替えワークフロー、エージェント連携を組み合わせることで、自分のハードウェア上にプライベートな音声アプリケーションを構築する開発者にとって、実用的な基盤となっています。