技術 約6分で読めます

MimikaStudio - 複数TTSエンジンをGUIで束ねるローカルTTSアプリ

ローカルTTSをやろうとすると、Qwen3-TTSのPythonスクリプトを書いたり、Chatterboxの環境を別に立てたり、エンジンごとにセットアップが必要になる。MimikaStudioはそれらを一つのGUIアプリに統合して、ボイスクローンからオーディオブック作成まで完結させるプロジェクト。

何ができるか

機能説明
ボイスクローン3秒のリファレンス音声から声を複製。複数エンジン間で音声ライブラリを共有
テキスト読み上げプリセット音声やカスタム音声でTTS生成。スタイル指示にも対応
PDF読み上げ文ごとにハイライトしながら音声再生
オーディオブック作成PDF、EPUB、TXT、Markdown、DOCXをWAV、MP3、M4Bに変換。チャプターマーカー付き

搭載エンジン

MimikaStudioは4つのTTSエンジンを内蔵している。

Kokoro(82Mパラメータ)

軽量・高速な英語TTS。21種のイギリス英語・アメリカ英語ボイスを搭載。Apple SiliconのMetal GPUで200ms以下のレイテンシを実現する。日本語は非対応。

Qwen3-TTS(0.6B / 1.7B)

以前の記事で詳しく書いたが、Alibaba Qwenチームが開発したオープンソースTTS。MimikaStudioではBaseモデルによるボイスクローンと、CustomVoiceモデルによるプリセット音声の両方が使える。

  • ボイスクローン: 3秒のリファレンス音声から声を複製(10言語対応)
  • CustomVoice: 9種のプリセットスピーカー(Ryan、Aiden、Vivian、Ono Annaなど)
  • スタイル指示: 「whisper softly」のように感情や話し方を制御可能

Chatterbox

Resemble AIが開発したマルチリンガルTTS。23言語に対応しており、MimikaStudioが搭載するエンジンの中で最も言語カバレッジが広い。

対応言語: アラビア語、中国語、デンマーク語、英語、フィンランド語、フランス語、ドイツ語、ギリシャ語、ヘブライ語、ヒンディー語、イタリア語、日本語、韓国語、マレー語、オランダ語、ノルウェー語、ポーランド語、ポルトガル語、ロシア語、スペイン語、スウェーデン語、トルコ語、スワヒリ語

Apple SiliconではCPU動作になる。ヘブライ語のTTSにはDicta ONNXモデル(約1.1GB)が必要で、インストール時に自動ダウンロードされる。

IndexTTS-2

ゼロショットTTSモデル。WER(Word Error Rate)、話者類似度、感情表現のいずれでもSOTAレベルのスコアを出している。動画の吹き替えなど、尺の精密制御が必要な用途に強い。モデルサイズは約24GBとかなり大きい。

エンジン比較

エンジンパラメータ日本語ボイスクローン言語数特徴
Kokoro82M1(英語のみ)高速・軽量
Qwen3-TTS0.6B / 1.7B10バランス型
Chatterbox-23多言語
IndexTTS-2~24GB--高品質・大型

アーキテクチャ

3つのプロセスで構成される。

┌─────────────────┐
│  Flutter UI      │ ← デスクトップアプリ or ブラウザ(:5173)
└────────┬────────┘
         │ REST API
┌────────▼────────┐
│  FastAPI Backend │ ← ポート8000、60以上のエンドポイント
│  (Python)       │    TTS推論、音声管理、オーディオブック生成
└────────┬────────┘

┌────────▼────────┐
│  MCP Server      │ ← ポート8010、50以上のツール
│                  │    Claude Code等から操作可能
└─────────────────┘
  • バックエンド: FastAPI(Python、約8,500行)。TTSエンジンのラッパー、音声ファイル管理、オーディオブック生成を担当
  • フロントエンド: Flutter/Dart(約10,100行)。デスクトップアプリまたはWebブラウザから利用可能
  • MCP Server: Model Context Protocolに対応。Claude CodeやMCP対応クライアントからTTS生成やボイス管理を操作できる
  • データベース: SQLiteでボイスライブラリとプロジェクト情報を管理

合計で約18,600行のコードベース。

MCPサーバー連携

MimikaStudioのMCPサーバーは50以上のツールを公開しており、Claude Codeから直接TTS生成やボイス管理ができる。

提供されるツールのカテゴリ:

  • 全エンジンでのTTS生成
  • ボイスサンプルの管理(アップロード、削除、プレビュー)
  • オーディオブック生成と進捗監視
  • システム情報とリアルタイムモニタリング
  • モデルステータスの確認とダウンロード

AIコーディングツールとTTSの組み合わせは、台本を書いてそのまま音声化するようなワークフローで使える。

必要スペック

項目要件
OSmacOS 13+(Ventura以降)
チップApple Silicon(M1/M2/M3/M4)
RAM8GB以上(16GB以上推奨)
ストレージ5〜10GB(モデル用)
Python3.10以上
Flutter3.x(デスクトップサポート有効)

Intel Macは非対応。Windows版はコードベースとしてはCUDA対応だが、ビルド済みバイナリはまだ提供されていない。

インストール

git clone https://github.com/BoltzmannEntropy/MimikaStudio.git
cd MimikaStudio
./install.sh

install.shがHomebrew、Python、espeak-ng、ffmpegの確認・インストール、venv作成、依存関係のインストール、SQLiteデータベースの初期化、Flutterの設定をすべて行う。モデルは初回使用時に自動ダウンロードされる(合計約3GB)。

起動

source venv/bin/activate

# デスクトップアプリ(バックエンド + MCP + Flutter)
./bin/mimikactl up

# Webブラウザで使う場合
./bin/mimikactl up --web
# → http://127.0.0.1:5173

# バックエンド + MCPのみ(GUIなし、API経由で操作)
./bin/mimikactl up --no-flutter

CLIツール

GUIを使わずにコマンドラインからも操作できる。

# Kokoroで英語TTS
./bin/mimika kokoro "Hello world" --voice bf_emma --output hello.wav

# Qwen3-TTSのプリセット音声
./bin/mimika qwen3 "こんにちは" --speaker Ono_Anna --style "穏やかに"

# Qwen3-TTSでボイスクローン
./bin/mimika qwen3 "テスト" --clone --reference voice.wav

ファイル入力(TXT、PDF、EPUB、DOCX)にも対応。バッチ処理に便利。

個別にTTSエンジンを使う場合との比較

Qwen3-TTSだけならpip install qwen-ttsで済む。Chatterboxも同様にpipで入る。では何のためにMimikaStudioが必要なのか。

MimikaStudioを使う利点:

  • 複数エンジンの音声ライブラリを統合管理できる(クローンした声を全エンジンで使い回し)
  • PDF、EPUB等のドキュメントをそのままオーディオブックに変換できる
  • GUIでパラメータ調整(temperature、top_p、top_k等)しながら試行錯誤できる
  • MCPサーバー経由でAIツールと連携できる
  • モデルのダウンロード管理がGUIから完結する

個別エンジンを直接使うほうが良い場合:

  • 特定のエンジンしか使わない
  • Pythonスクリプトに組み込みたい
  • カスタムのパイプラインを構築したい
  • macOS以外で動かしたい

ライセンスについて

ソースコードはBSL-1.1(Business Source License 1.1)。個人利用や内部利用は無料だが、完全なオープンソース(MIT、Apache 2.0等)ではない。一定期間後にGPL-2.0に移行する予定。バイナリ配布には別途ライセンス(Mimika Binary Distribution License)が適用される。商用利用には個別ライセンスが必要。

搭載している各TTSエンジン自体のライセンスは別で、Qwen3-TTSはApache 2.0、ChatterboxはMIT。MimikaStudio固有のコードに対してBSL-1.1が適用される形。

関連記事