SSブログ

EdisonでOpen JTalkを使ってみる [edison]

前回,EdsionでUSB Audioを使えるようにしたので,今回はOpen JTalkを使ってEdisonにしゃべらせてみる.Open JTalkはフリーの日本語音声合成エンジンだ.

ではさっそくインストール.

まず,hts_engine APIをインストール.適当なディレクトリ(以下ではopenjtalk)を用意してダウンロード,展開してインストールしてやる.
cd ~/
mkdir openjtalk
cd openjtalk/
wget http://downloads.sourceforge.net/hts-engine/hts_engine_API-1.09.tar.gz
tar xzvf hts_engine_API-1.09.tar.gz
cd hts_engine_API-1.09/
./configure
make
make install

次に,OpenJTalkのインストール
cd ~/openjtalk/
wget http://downloads.sourceforge.net/open-jtalk/open_jtalk-1.08.tar.gz
wget http://downloads.sourceforge.net/open-jtalk/open_jtalk_dic_utf_8-1.08.tar.gz
wget http://downloads.sourceforge.net/open-jtalk/hts_voice_nitech_jp_atr503_m001-1.05.tar.gz

tar xzvf open_jtalk-1.08.tar.gz
cd open_jtalk-1.08/
./configure \
     --with-hts-engine-header-path=/usr/local/include \
     --with-hts-engine-library-path=/usr/local/lib \
     --with-charset=utf-8
make
make install

cd ~/openjtalk/
tar xzvf open_jtalk_dic_utf_8-1.08.tar.gz
tar xzvf hts_voice_nitech_jp_atr503_m001-1.05.tar.gz

MMDAgentのサイトから音声データをダウンロード
wget http://sourceforge.net/projects/mmdagent/files/MMDAgent_Example/MMDAgent_Example-1.4/MMDAgent_Example-1.4.zip
unzip MMDAgent_Example-1.4.zip


Open JTalkの実行にはオプションが多いので,スクリプトを作成して実行する.
vi openjtalk.sh

#!/bin/sh

OPENJTALK_DIR=/home/root/openjtalk
VOICE=$OPENJTALK_DIR/MMDAgent_Example-1.4/Voice/mei/mei_normal.htsvoice
DIC=$OPENJTALK_DIR/open_jtalk_dic_utf_8-1.08
echo $1 | open_jtalk \
-m  $VOICE \
-x  $DIC \
-ow $2 \
-g 9

ちなみに,最後の-gはvolume(dB)を指定するオプションだ.
前回,EdisonにUSB Audioを接続したが,スピーカーが100均のパッシブスピーカーなので音がとても小さい.なので,Open JTalkの出力をあらかじめ上げておく.値を大きくすると出力の音量が大きくなる.あまり上げすぎると音が歪んでしまうので適当に調整してみてくださいな.

あとは作成したスクリプトに実行属性を設定して,
chmod 744 openjtalk.sh

しゃべらせてみる.とりあえず「テストです」としゃべってもらうには,
./openjtalk.sh "テストです" a.wav

これでa.wavファイルが作成される.

再生はうちの環境では
aplay -D plughw:1 a.wav

でOK.

お試しあれ.

タグ:openjtalk
nice!(1)  トラックバック(0) 
共通テーマ:日記・雑感

nice! 1

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。