1. はじめに
このガイドは、ローカルだけで動作する「マイク→文字起こし→自動読み上げ→ボイスチャット出力」環境を、一般ユーザーでも導入しやすくまとめた手引きです。すべて 64bit Windows を前提にしています。
2. 前提/要件
必須ソフトと推奨バージョン
- Windows 10/11 (64bit)
- WhisperDesktop(リアルタイム STT)
- VOICEVOX(ローカル TTS エンジン)
- VB-Audio Virtual Cable(仮想オーディオ)
- PowerShell(実行ポリシー変更が必要)
- NAudio.dll(64bit 用、配布パッケージに同梱可)
3. フォルダ構成例
パッケージ配布時の推奨レイアウト(そのまま展開して使える)
WhisperTTS/
│ ├─ WhisperDesktop.exe
│ ├─ whisper_watch_tts.ps1
│ └─ __start_tts.bat
│ └─ NAudio.dll
│ └─ _outtts.txt
├─ models/
│ └─ (ggml-small.bin 等)
├─ VOICEVOX/
│ └─ VOICEVOX.exe
※ WhisperDesktop のモデルファイルは容量が大きいので別ダウンロードでも可。Models フォルダに置くことで自動検出できます。
4. ダウンロードとインストール
主な入手先(公式推奨)
- WhisperDesktop: GitHub
- ggml-small.bin: link
- VOICEVOX: link zip版でok
- VB-Audio Virtual Cable: link
- NAudio link
ggml-small.bin を推奨します。理由:リアルタイム性(低レイテンシ)と精度のバランスが良く、話者識別や過剰な付加情報を出さないためボイスチャット用途に最適です。
5. 初期設定
重要なポイントを順に設定します。
WhisperDesktop
言語を日本語に、出力を _outtts.txt に設定。モデルは models/ggml-small.bin を配置します。
VOICEVOX
エンジンが起動しているか確認: http://127.0.0.1:50021/version にアクセスしてレスポンスがあること。
VB-Audio Cable
仮想ケーブルをインストール。既定デバイスに設定する必要はありません。 スクリプトが自動的にデバイスを検出します。
※ただし既定デバイスしか認識しないゲームアプリもあるので既定に設定した方がベター。
PowerShell
実行ポリシーを一時的に緩める: Set-ExecutionPolicy Bypass -Scope Process
6. スクリプト配置(whisper_watch_tts.ps1)
フォルダに以下のファイルを置きます。
whisper_watch_tts.ps1— Whisper の出力を監視して VOICEVOX に投げるメインスクリプト__start_tts.bat— WhisperDesktop とスクリプトを起動する簡易ランチャー
スクリプトは NAudio.dll を同階層から読み込みます。PowerShell は 64bit で実行してください。
7. 起動方法(Quick Start)
- VOICEVOX を初回起動する(Engine が 127.0.0.1:50021 で待ち受け)
- VB-Cable をインストール・確認
- WhisperDesktop を起動(models/ggml-small.bin を指定)
- __start_tts.bat を実行、次からはbatファイルだけでOK。WhisperDesktopの音声認識スタートは手動で押すこと。
動作確認: WhisperDesktop に向かって話す → 末尾の行が _outtts.txt に追記され → VOICEVOX が音声出力します。
8. チューニングと運用
軽量化と遅延対策の例:
- Whisper の step/length を短めに設定(例: step=2000ms, length=4000ms)
- VAD 閾値を上げてノイズ誤認識を減らす
- _outtts.txt は末尾1行だけを監視する実装にして高速化
9. トラブルシューティング
代表的な問題と対処
- 音が出ない: VOICEVOX が起動しているか、VB-Cable のデバイス番号が正しいかをチェック
- 同じ文が繰り返される: スクリプト側で再生済みキャッシュを保持して重複を弾く
- NAudio.dll が読み込めない: ブロック解除 (
Unblock-File) と 64bit PowerShell 実行を確認 - テキストが色付きや制御文字で汚れる: ANSI 制御文字を正規表現で除去してから TTS に渡す
付録: ライセンスと配布
NAudio は MIT ライセンスのため再配布可。VOICEVOX や VB-Audio のライセンスは各公式を確認してください。