VOICEBOX を GitHub CodeSpaces で動かしてみるメモ

VOICEBOX を GitHub CodeSpaces で動かしてみるメモ

VOICEBOX を GitHub CodeSpaces で動かしてみるメモです。

背景

クローズドハッカソンで VOICEBOX を使いたいという話があり、アイデアとして GitHub CodeSpaces のお話を出したのですが、自分自身で試したくなったのでやってみます。

素の CodeSpaces に入れようとしたものの、各ライブラリで微妙にバージョンが違ったりすると、サッと動かない感じだったので Docker イメージを使う方法でやってみます。

【TTS】VOICEVOX+Docker+WSL2で合成音声を出力してみる | エンジニアBLOG

Docker の扱いは WSL の内容ですが素直に動きそうなので、こちらの記事を参考にしました。

Codespaces の起動

Blank を起動してプレーンな状態で起動します。

使う Docker イメージ

2025/2 時点で

voicevox/voicevox_engine - Docker Image | Docker Hub

こちらのイメージを使いました。

ターミナルで

docker pull voicevox/voicevox_engine:cpu-latest

のコマンドを入力して実行します。

しばらく待つとうまくインストールされました。

Docker の実行

docker run --rm -it -p '127.0.0.1:50021:50021' voicevox/voicevox_engine:cpu-latest

で Docker を実行します。

うまく実行されました。

ポートタブでうまく起動されたことも確認しておきます。

試してみる

【TTS】VOICEVOX+Docker+WSL2で合成音声を出力してみる | エンジニアBLOG

こちらの記事で、コマンドでサッと試せているのが、初動の動作確認として良かったです。

最初に起動したターミナルは VOICEBOX を起動しているので、それは起動したままで、別のターミナルを開きます。

echo -n "ウォンバットってかわいいですよねー。" > text.txt

まず、しゃべらせる元となるテキストを作成します。

curl -s -X POST "localhost:50021/audio_query?speaker=1" --get --data-urlencode text@text.txt > query.json

text.txt の内容から音声合成用のクエリ作成して query.json を書き出します。

curl -s -H "Content-Type: application/json" -X POST -d @query.json "localhost:50021/synthesis?speaker=1" > audio.wav

さきほど作成した音声合成用のクエリ query.json を元に audio.wav ファイルを作成します。

無事このようなファイル構成があって audio.wav が出来上がりました。

audio.wav クリックします。サウンドプレイヤーが出てきました。

再生ボタンをクリックすると「ウォンバットってかわいいですよねー。」と、ずんだもんの声で再生されます!

うまく動かせましたね!

あとは、この環境をうまく使って VOICEBOX を試してみてください!

出来上がった環境を Codespaces 一覧で見てみると 3 GB程度で動かせるもののようです!