詳しくは以前まとめた次のリンクを見てください。
・http://et-dev.main.jp/index.php?FireVox
Fire Voxの本家は次のリンクで公開されています。
・Fire Vox: A Screen Reading Extension for Firefox
とりあえず、現時点でできあがっているものを公開します。あとで正式な公開をします。
当然ですが、自己責任での使用でお願いします。Firefox2向けのものです。SAPI音声をお持ちの方が対象です。
・ダウンロード(clc-4-tts_bundle_v3.4_jp.xpi)
以下、英語版のFire Voxを本家と呼びます。
本家のFire Voxだけでも、日本語文字列の日本語音声読みはできますが、本家のままだとメニューを読むときの「〜 has sub menu.」とか、そういう英語文字列はそのままになってしまいます。それを日本語に置き換えるものです。
訳語は既存のスクリーンリーダを参考にしながら決めています。また、できるだけ簡潔になるように心がけています。例えば「〜 has sub menu.」は「〜にはサブメニューがあります。」だと冗長なので単に「〜メニュー」としたりしています。いい加減な訳もまだ残ってますが、ぼちぼち修正していきます。
基本的に日本語文字列以外本家とは大きく変わらないようにしていますが、それでもいくつかの変更点があります。
・イベントの音声をFirefoxのロケールに依存させています
本家ではメニューやコントロールの読みは、コントロールパネルの音声認識で設定するコンピュータの既定の声になっていますが、これをFirefoxのロケールで判断するようにしています。つまりメニューに使われている文字列の言語の声になるようにしています。日本語のFirefoxを使っていれば、日本語でしゃべります。日本人なのに英語版Firefoxを利用されていれば、この場合Firefoxのロケールは英語になるので、メニューなどのイベントを英語で読み上げてくれます。
・SAPI4音声でも読みます
Windowsで制御の仕組みが提供されている音声合成にはSAPI4とSAPI5があります。Fire Voxは標準でSAPI5対応の音声が使えますが、これを改造してSAPI4対応の音声でも使えるようにしました。ただ最低限の機能しかまだ付けていません。音声のピッチの制御や、言語の選択などができません。また音声の選択もできません。例えばロボ太郎ではなく読み秀君で読ませたいという指定がまだできません。それから、全文読みをさせているとき画面のカーソルとの同期ができていません。こういうのも改善していきたいと思います。ただ過去の技術であるSAPI4への対応はこの程度簡易的でもいいんじゃないかとも考えています。
気付いている問題点がいくつかあります。
・イベントの中に組み込まれている文字列をページの音声で読んでくれない
ページの音声とイベントの音声が違うときに気付きます。一番よく分かるのが、ページタイトルを読み上げるときです。これは、イベントを読み上げる言語の文法も絡んできます。そういうわけで改造は後回しにしてます。