Qwen3-TTS を使用した音声クローンツール。WSLg で録音し、任意のテキストを指定した声で読み上げた音声ファイルを生成します。
- 3秒程度の音声サンプルで声をクローン可能
- 日本語を含む多言語対応
- WSLg 録音対応
- CPU でも動作可能(ただし低速)
- Python 3.10 以上
- WSL2 with WSLg(録音機能を使用する場合)
- 16GB RAM 推奨
# リポジトリのクローン
git clone https://github.com/kenimo49/voice-clone.git
cd voice-clone
# WSLg オーディオ設定(初回のみ)
./setup_wslg.sh
# 仮想環境の作成とパッケージインストール
python -m venv venv
source venv/bin/activate
pip install -e .# オーディオデバイス一覧
voice-clone devices --audio
# GPU情報
voice-clone devices --gpu
# 両方表示
voice-clone devices# 5秒間録音
voice-clone record -o samples/speaker_a.wav -d 5
# インタラクティブモード(Enter で開始/停止)
voice-clone record -o samples/speaker_a.wav --interactive
# デバイス指定
voice-clone record -o samples/speaker_a.wav -d 5 --device 1# 基本的な使い方
voice-clone generate \
-r samples/speaker_a.wav \
-t "こんにちは、今日もいい天気ですね" \
-o outputs/hello.wav
# CPU モードで実行
voice-clone generate \
-r samples/speaker_a.wav \
-t "テスト音声です" \
-o outputs/test.wav \
--device cpuvoice-clone/
├── README.md
├── CLAUDE.md
├── pyproject.toml
├── setup_wslg.sh
├── src/voice_clone/
│ ├── __init__.py
│ ├── cli.py
│ ├── config.py
│ ├── audio/
│ │ ├── __init__.py
│ │ ├── devices.py
│ │ └── recorder.py
│ ├── tts/
│ │ ├── __init__.py
│ │ └── qwen_tts.py
│ └── stt/
│ ├── __init__.py
│ └── vosk_stt.py
├── samples/ # 入力音声サンプル
└── outputs/ # 生成音声出力
- Qwen/Qwen3-TTS-12Hz-0.6B-Base: 軽量版、16GB RAM で余裕を持って動作
CPU でも動作しますが、10秒の音声生成に30秒〜1分程度かかります。
- PulseAudio 経由で Windows のマイクにアクセス
~/.asoundrcで ALSA から PulseAudio へルーティング- 環境変数
PULSE_SERVERを設定
- Windows 設定 > プライバシー > マイク でアプリのアクセスを許可
- WSL を再起動:
wsl --shutdown(PowerShell から) ./setup_wslg.shを再実行
# デバイス確認
voice-clone devices --audio
# 短い録音テスト
voice-clone record -o test.wav -d 3
# 再生確認
aplay test.wavMIT License