ラズパイ3にOpenJTalk インストール
ラズパイ3に喋らせるため
OpenJTalk をインストール
「ラズパイ、音楽かけて」でRaspberry Piにmp3を再生させる
と
【Raspberry Pi】指定時間にゴミの収集日を音声でお知らせする方法[Open Jtalk+cron]
を参考に
sudo apt-get update
でリポジトリ更新
sudo apt-get install -y open-jtalk open-jtalk-mecab-naist-jdic hts-voice-nitech-jp-atr503-m001
これでインストールして
MMDagent で女性音声の追加
wget --no-check-certificate https://sourceforge.net/projects/mmdagent/files/MMDAgent_Example/MMDAgent_Example-1.7/MMDAgent_Example-1.7.zip
wget –no-check-certificate
とすると
SSLのついたサイトへアクセスできる
にオプションについて載っているので参考に
unzip MMDAgent_Example-1.7.zip
で解凍
sudo cp -R ./MMDAgent_Example-1.7/Voice/mei /usr/share/hts-voice/
cp コマンドの -R オプションを調べてみる
意味は
コピー元にディレクトリを指定した場合
再帰的に(サブディレクトリも含めて)コピーする
を参考に
あとはテスト
echo "はじめまして、ラズベリーパイです" | \ open_jtalk -m /usr/share/hts-voice/mei/mei_normal.htsvoice \ -x /var/lib/mecab/dic/open-jtalk/naist-jdic \ -ow voice.wav
で音声ファイルを作成し
sudo bluetoothctl connect 6C:56:97:3A:52:98
を実行し Amazon Echo へ接続
ctrl + d で抜けて
aplay -D bluealsa voice.wav
で喋らせる
これで
はじめまして、ラズベリーパイです
と Amazon Echo から声がでる
もしくは
vim jtalk.sh
を作成
#!/bin/bash tempfile=`tempfile` option="-m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice \ -x /var/lib/mecab/dic/open-jtalk/naist-jdic \ -r 0.7 \ -ow $tempfile" echo "$1" | open_jtalk $option #aplay -q $tempfile aplay -D bluealsa $tempfile rm $tempfile
として保存
./jtalk.sh "こんにちは。音声テストです。"
というように
スクリプトの後に”” で囲んでテキストを入力し
それを喋らせる
もともとは
-q オプションででメッセージを表示しないようにする予定だが
音声がでないため
-D オプションで bluealsa を指定するようにしたら
男性の声で
こんにちは。音声テストです
と音声がでるようになった
aplay のオプションについては
aplayのヘルプ/オプション
を参考に
また OpenJTalk のオプションで
-r オプションによりしゃべる速度をコントロールできる
-r 0.7
だとちょっとゆっくりになる
OpenJTalk のオプションについては
Ubuntu Open JTalk その2 – open_jtalkコマンドの説明
を参考に
よく使うものとしては
-m で音声データ指定
-ow で保存するwavファイルの指定
あと
テキストファイルを用意して
OpenJTalk で音声ファイルを作成し
aplay で再生することもできる
vim test.txt
でファイルを作成
今日の予定はイオンで買い物
というように適当に入力し保存
open_jtalk -m /usr/share/hts-voice/mei/mei_normal.htsvoice -x /var/lib/mecab/dic/open-jtalk/naist-jdic -ow text.wav test.txt
で音声ファイルを作成
aplay -D bluealsa text.wav
とすれば
今日の予定はイオンで買い物
と音声がでる
テキストの音声変換に関しては
テキストを音声データに変換してロボットに喋らせる。
も参考に