【MeCab】BeagleBoneBlack で Open JTalk を使う

BeagleBoneBlack rev.cでOpen JTalkの環境を構築するメモです。
OSはdebianで, BeagleBoneBlack上でbuildを行います。

Open JTalk

音声情報を指定するmオプションは1.06以降でサポートしているので最新の1.08を入れようとしたらbuildが失敗したので, 1.07にしました。

まずはdictionary, voice をsourceforgeからダウンロードします。展開後は./conf以下に配置しておきます。

$ wget https://downloads.sourceforge.net/open-jtalk/open_jtalk_dic_utf_8-1.08.tar.gz
$ tar xvzf open_jtalk_dic_utf_8-1.08.tar.gz
$ wget https://downloads.sourceforge.net/open-jtalk/hts_voice_nitech_jp_atr503_m001-1.05.tar.gz
$ tar xvzf hts_voice_nitech_jp_atr503_m001-1.05.tar.gz
$ sudo apt-get install openjtalk-mecab-naist-jdic

音声合成エンジンをインストールします。隠れマルコフモデル(HMM)を使っているようです。

$ wget  https://downloads.sourceforge.net/hts-engine/hts_engine_API-1.09.tar.gz
$ tar xvzf hts_engine_API-1.09.tar.gz
$ ./configure && make && sudo make install

open_jtalk本体をインストールします。hts_voice_nitech_jp_atr503はbiuld時に静的リンクされます。

$ wget https://sourceforge.net/projects/open-jtalk/files/Open%20JTalk/open_jtalk-1.07/open_jtalk-1.07.tar.gz
$ tar xvzf open_jtalk-1.07.tar.gz 
$ cd open_jtalk-1.07
$ ./configure --with-charset=UTF-8 && make && sudo make install

Open JTalkを使ってみる

USBスピーカはBBBの起動時に繋いでおきます。低消費電力のUSBスピーカを選択した方が良いと思います。
lsusbコマンド等でUSBデバイスの確認をします。

open_jtalkでtextを wav に変換します。

$ echo こんにちは | open_jtalk -x ./conf/open_jtalk_dic_utf_8-1.08 -m ./conf/nitech_jp_atr503_m001.htsvoice -ox out.wav

ALSAを使って再生してみます。

$ aplay -D plughw:1,0 out.wav