Raspberry Piをしゃべらせた(Open JTalk)

もはや、”今更感”がぬぐえないエントリーではありますが、Raspberry PiにOpen JTalkを使って日本語テキスト読み上げをさせてみました。

まぁ、ぶっちゃけRaspberry PiでなくてもLinuxが動けば、基本的にはどんなマシンでも動くはずです。Raspberry Piの場合、RaspbianのレポジトリーにOpen JTalkが入っているので、ものすごく簡単にしゃべらせることができる、という事です。多分Arch Linuxでも動くんじゃないでしょうか。

で、すでに先人達の知恵がありますので、基本的なインストールもろもろについては、Raspberry Piでテキスト読み上げのページを参考にして頂ければ大丈夫です。

ただ、デフォルトの音声が怖いらしいので、音声部分だけは別のところから借りてきたという記事が、Raspberry Piに喋らせる(橋本商会さん)にありますので、この2つの合わせ技でほぼOKかと思います。

とはいえ、2つの記事へのリンクを張るだけではあんまりなので、引っかかりやすそうな所を取り上げてみます。

  • ファームウェアは最新のものにしておかないと、音声にノイズが混じる ファームウェアのアップデートについては、https://github.com/Hexxeh/rpi-updateのREADME.mdの通りにやれば大丈夫です。(1,2ヶ月前はエラーが出てましたが、今日アップデートした限りでは大丈夫でした)
  • ALSAAdvanced Linux Sound Architecture) とpulseaudioとの組み合わせの不具合で音が出なかった(素のRaspbian環境で) スイマセン、Linuxでの音周りをよく理解できていないのですが、wikiの音関係のトラブルシューティングを読んでみると、2012年12月(現時点で最新)のRaspbianでALSAとpulseaudioが競合して音が出ないらしい、ということが出てましたので、安直に $ sudo apt-get --purge remove pulseaudio でpulseaudioを取り除きました。/var/log/syslogにも、それらしいエラーが出てました。
  • 音声の出力先 音声の出力先はHDMIにのっけてディスプレイ側で音声を出す方と、イヤフォン端子に出力する方がいらっしゃるかと思います。これは、 $ sudo amixer cset numid=3 <n> で<n>の部分を0で自動検出、1でイヤホン端子出力、2でHDMIに出力するようにできます。

多分、このあたりのトラブルシューティングで音が出るようになると思います。音がでない場合には、とにかく/var/log/messagesと/var/log/syslogを $ tail -f /var/log/messages

のように垂れ流して見てれば何かしらのエラーは出るはずですので、あとはひたすらググるかコメント頂ければと思います。