1月 26, 2013
kamata

openJTalkを10.6にインストール(1)

鎌田です。

openJTalkという音声合成のオープンソースがあるということなので、インストールしてみた。
最新版がopen_jtalk-1.06。

インストールには、
本体 open_jtalk-1.06.tar.gz
音声エンジン hts_engine_API-1.07.tar.gz
音声ファイル hts_voice_nitech_jp_atr503_m001-1.05.tar.gz

OS10.6環境では、コンパイル前に、下記を設定。
export CFLAGS=”-arch i386″
export CXXFLAGS=”-arch i386″
export LD_FLAGS=”-arch i386″
export LDFLAGS=”-arch i386″

これを実施してから、WebにあるopenTalkのインストール手順で問題無くインストールと音声合成ができた。
参考サイト:Mac OS X Lion で OpenJTalk-1.05 を動かす

ハマったのは、
1)音声を女声(mei-normal)に変更しようとしたのだが、Webにある情報は、前バージョンの1.05のものなのだ。
1.06は、hts_voiceのフォーマットが新しくなっているため、1.05のやり方では変更出来ない。
女声は1.06に対応していなかった。
そのため、女声を再生するには、1.05をインストールしなくてはいけなかった。

2)再生文字数は1024バイトに限定されていた。
1024バイトの指定は、ソースファイルの
open_jtalk-1.06 > bin > open_jtalk.c の中に、77行目に、#define MAXBUFLEN 1024
となっている。この数字を変更すれば、変換文字数を増やすことができた。
ただし、openJTalkのソースを#define MAXBUFLEN 1024で検索すると20カ所あるようだ。
20カ所全部変換する必要があるのかは分かりません。

3)ユーザ辞書はない
openTalkではmecabを使用している。mecabはユーザ辞書が設定できるのだが、ここのmecabはそれができないようだ。
システム辞書に登録しようとしたが、2項目csvに追加されていて、その内容がわからない。
これについては、別途報告します。

Leave a comment