#やりたいこと
・シェルスクリプトで簡単な読み上げ機能を実装したい。
・日本語と英語。できたら中国語も。
・プラットフォームはRaspberry Pi (raspbian wheezy)。
・やり方はapt-getでインストールするタイプのものと、WebのAPI呼出しのものの2種類。(インターネットに接続できる場合は後者を使用。)
#やってみた
・日本語対応のソフトとしてはOpen JTalkをインストール。問題なし。(参考はここ。)
・英語対応はeSpeakとFestivalをインストールしたが、前者の勝ち。(参考はここ。)
・WebのAPI形式のものはGoogle translateのTTS機能(text to speech)があった。英語は圧倒的に高品質。ただし、100文字の制約あり。URLはhttp://translate.google.com/translate_tts?tl=en&q=Hello+World!
って感じ。
#疑問点
・Google translateは日本語にも対応しているのだが、ChromeブラウザからURL入力だとうまくいく(こんにちは)のに、bashからはうまくいかない。
・URI encodeした文字列もだめ。
・日本語はアクセントが少しおかしいが、なんとかbashから使いたい!
#解決策
・英語(tl=en)の場合と違って、日本語(tl=ja)の場合にはUser-Agentのチェックがかかっていたからうまくいかなかった。
・mplayerの場合には-user-agentは効かないので、~/.mplayer/configに以下を記載したらOKでした。
user-agent='Mozilla/5.0 (X11; Linux i686; rv:10.0.4) Gecko/20100101 Firefox/10.0.4'