#この記事でできること
・OpenJtalkのRaspberry Piにインストール
・実際に"こんにちは"を音声出力
#動作環境
・Raspberry P i3 model B
・OS: Raspbian
#前提
・ラズパイのssh接続で操作できる or ディスプレイで操作可能
・日本語入力が可能
#OpenJtalkのインストール
自分は、この記事を参考にしてインストールしました。
まずは、以下を実行します
sudo apt-get update #アップデートする
sudo apt-get install open-jtalk #インストール
次に推奨されているパッケージもインストールします。
sudo apt-get install open-jtalk-mecab-naist-jdic hts-voice-nitech-jp-atr503-m00
##テスト
これでもう音声出力はできます!
OpenJtalkは日本語の音声ファイルを作ってからそれを再生するという順序になっています。
まず、以下で音声ファイルを作ります。
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 ~/ojtalk.wav
これで同じディレクトリにojtalk.wavという音声ファイルができたと思います。
それでは次に再生します。
aplay ~/ojtalk.wav
"こんにちは"
と出力されましたか?
####オプションの意味
-x 使う辞書
-m どの声を使うか(男声or女声など)
-ow 出力ファイルを指定
####ノイズが多い時
ちなみにですが、3.5mmのアナログ出力だとノイズが乗ってしまって綺麗に聞こえないことがあります。(自分はそうでした、、、)
その時は、HDMIでディスプレイに接続してディスプレイから出力してみてください。
おそらく回路が原因のノイズは消えます。
####音声ファイル保存せずに出力
今回は、音声ファイルを作ってから出力しましたが、発話させる度に音声ファイルが保存されていくのは少し気持ち悪いという方は、以下で音声ファイルを作らずにできます。
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 /dev/stdout | aplay --quiet
#女性の音声をダウンロード
MMDAgentのパッケージを使用します。
まずは以下を実行してダウンロード
wget https://sourceforge.net/projects/mmdagent/files/MMDAgent_Example/MMDAgent_Example-1.7/MMDAgent_Example-1.7.zip
次にそのzipを解凍します
unzip ./MMDAgent_Example-1.7.zip
そしてフォルダーの中にあるmeiちゃんの音声フォルダーを
/usr/share/hts-voice/のディレクトリー下にコピーします。
sudo cp -r ./MMDAgent_Example-1.7/Voice/mei/ /usr/share/hts-voice/
これで音響モデルをこれに変えれば女性音声になります。
オプションの -m 音響モデル
に相当する部分ですね。
echo "こんにちは”|open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m /usr/share/hts-voice/mei/mei_normal.htsvoice -ow ~/ojtalk.wav
aplay ~/ojtalk.wav
これで女性の音声になったと思います。
#まとめ
今回はOpenJtalkのインストールとそのテストをお届けしました。
次は、APIで取得した情報やweb scrapingしたものを話すプログラムを作っていきたいと思います!
では!