【便利】NVDAでPCにしゃべらせる今の音声合成
音声合成についてしらべてみた。(追記あり)
オープンソースのNVDA単体でも、音声合成(JTalk)を試せますが、マイクロソフトのSpeechPlatformを組み合わせてみた。
Windows7(64bit)なのですが、なぜかNVDAで読み込みできず、あたふたしてたところ、x86版のものを利用すると良いようです。
最新のSpeechPlatformは11なのですが、x86版が無いため、バージョン10とひとつ古いものです。
インストールするものは、NVDA(日本語版)+SpeechPlatform10+TTS/haruka-jp+haruka用辞書の4つです。すべてWindowsユーザーなら無料です。
NVDA(日本語版)単体でも試せますが、ちょっとロボットっぽい音声(JTalk)です。
こちらのページに詳しく書かれています。
http://mahoro-ba.net/e1002.html
ただ単純に、画面上の文章を読み上げるだけではなく、その環境状態やホットキーなども読み上げてる。プログレスバーの進捗も、BEEPの周波数で鳴ったりする。もちろん、細かく設定できる。
MS謹製の音声エンジンHarukaもかなりのデキです。辞書さえ鍛えれば、読み違いでの違和感もかなり無くなるでしょう。
i7-920のPCで試しましたが、負荷もほとんどありません。
ただしNVDA、アプリケーションとの相性があるようです。このブログ投稿用のLiveWriterでは、文字入力が出来ない不具合アリです。なので、今はOFFにしてます。
これまで音声合成については調べた事なかったですが、内部仕組みは、MS/Windowsでは、SAPI(現SpeechPlatform)規格として統一してて、文字情報を送るソフトと、音声合成エンジンの橋渡し仲介をしているようです。
だから、いとも簡単に、音声合成エンジン部分だけを切り替えられるんですね。つー事は、簡単に作れそうです。
普通の利用には、全然問題ないようですけど、そこだけ注意です。
もう少し調べてみると、GalateaProjectという、主に学術機関が中心で進められたプロジェクトが7年ほど前にあったらしく、ここでの成果物が公開されてます(オープンソース)
顔のモーフィングも込みでの、音声合成という面白そうなシロモノです。
実際にDLして試してみたら、これも簡単に、音声合成ができちゃいました。
もち、コマンドラインからで、テキストを発声するだけですが、なんだが、色々使えそう。
詳しくはREADMEを見ると書かれてますが、こんな感じで発声できます。
#gtalk –C ssm-win.conf
#set Text = 俺は人間をやめるぞ!ジョジョ
#set Speak = NOW
#set App = EXIT
set Textは複数指定できるのか?と思ったが、1行単位でみたいな仕様らしい。ちなみに、2000文字位与えたら、落ちました。メモリ周りを改修したらよさげっぽい。
Textを与えたと同時にしゃべらす事もOKです。
サーバモードもあるので、コマンドを投げまくる事も可能。ファイル書出しは、RAW?とWAVで書出し。
おもろいっすなぁ。