音声合成
OpenJTalk

Windows で Open JTalk を使う(Bash on Ubuntu on Windows と コマンドプロンプトでお手軽に)

はじめに

Windows 10 環境で手軽に Open JTalk を使った音声合成を試してみたいと思います。

準備

Bash on Ubuntu on Windows を使用できるようにしておきます。

手順

Bash on Ubuntu on Windows 上に Open JTalk をインストール

bash を起動した状態で下記のように実行します。

sudo apt update
sudo apt install open-jtalk open-jtalk-mecab-naist-jdic hts-voice-nitech-jp-atr503-m001

これで使える状態になりました。

echo こんにちは | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice -ow out.wav

とすれば、out.wav ファイルが生成されます。
Ubuntu なので簡単ですね。

Windows から使う

bash 上で .wav ファイルを再生する方法が分からなかったので、Windows環境から呼び出して簡単に使えるようにしてみます。

  • シェルスクリプトの作成
vi /usr/local/bin/ojt.sh
ojt.sh
echo $1 | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice -ow out.wav
  • 権限変更
chmod 755 /usr/local/bin/ojt.sh

としておきます。

  • Windows 環境から実行

コマンドプロンプト や PowerShell から

C:\temp>bash /usr/local/bin/ojt.sh こんばんは

と実行するとカレントディレクトリ(この場合、c:\temp)に out.wav が生成されるので、これを再生します。
Windows なので、再生するのはいろいろと手段がありますね。

  • その他

.htsvoice を変更して声を変更することもできます。
スクリプトファイルで絶対パス指定にすればファイルはどこに置いても大丈夫なはずです。