LoginSignup
16
15

More than 5 years have passed since last update.

Google TTSで読み上げ(100文字まで)

Last updated at Posted at 2014-05-26

やりたいこと

・シェルスクリプトで簡単な読み上げ機能を実装したい。
・日本語と英語。できたら中国語も。
・プラットフォームは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'

16
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
15