Firefoxで利用可能な音声読み上げ機能拡張

 Firefox用に2つのテキスト読み上げ機能拡張がリリースされたのは比較的最近の出来事だが、これらをインストールすることは視覚障害者の利用に適したWebブラウザを構築するだけでなく、Web上での音声読み上げインタフェースを必要とする通常ユーザの要望にも応えられる側面を有すはずだ。2つの機能拡張のうち Fire Vox は“ブラウザ内限定スクリーンリーダ”とでも言うべき位置付けであるが、そのテキスト読み上げ機能は、視力に障害を抱えているユーザであっても日常的なブラウジングが可能となる本格的なレベルに仕上がっている。もう一方の CLiCk, Speak は主としてクリック操作で制御するタイプのスクリーンリーダであり、強度の弱視者ないしは、視覚そのものは正常であるのに文字を理解できない失読症患者などの用途に適していると言えるだろう。

 どちらの機能拡張も、Linux、Windows、Mac OS Xにて利用可能なクロスプラットフォーム仕様で作られている。これらの機能拡張のインストールガイドは各プラットフォーム別に用意されているが、これは障害者向けのユーザ補助機能は個々のオペレーティングシステムごとに利用できるフレームワークが異なるためでもある。Linuxの場合、同プロジェクトが用意しているJava FreeTTSスピーチエンジンまたは、GNOMEから提供されているOrcaというユーザ補助機能フレームワークを使用することになる。

開発のバックグラウンド

 Fire VoxとCLiCk, Speakおよびこれらを駆動するCLC-4-TTSライブラリはCharles L. Chen氏の手により作成されたものである。大学の学部生であったChen氏は商用スクリーンリーダのJAWSをFirefoxで利用するための方法を模索していた。ところがJAWSとのインタフェースを取る作業は思いの外難しく、また製造元からの協力も得られず、商品としての単価も安くはなかったため、Chen氏はオープンソース系の代替案を用意することを決断したのである。

 同氏はまずテキスト読み上げ用の汎用ライブラリとして機能するCLC-4-TTSを作成し、動作実証を目的としたFire Vox機能拡張を用意した。ところが同氏にとっても意外なことに、この機能拡張が思わぬ人気を博することになったのである。実際、ユーザ補助機能の普及促進団体であるKnowbilityは2005年に開催されたSouth By SouthwestのブースにChen氏を招待してFire Voxのデモンストレーションを開催しただけでなく、その後も同氏の活動を支援し続けるようになった。同じくChen氏も、同団体におけるユーザ補助機能のインストラクタとして定期的に活動するようになっている。

 ところでLinuxの二大デスクトップ環境(およびプロプライエタリ系OS)ではシステム全体で利用可能なスクリーンリーダが用意されているのに、こうしたブラウザ固有のテキスト読み上げ機能を用意する必要性は何なのだろうか? その点に関してChen氏は、ブラウザ固有のスクリーンリーダにはHTMLタグを解釈して見出し部だけを識別させたり、箇条書き部の項目を数え上げるなどの他に、内部リンクと外部リンクを音声として読み分けるといった特異な要件が求められるという説明を、自身のサイトにて述べている。

 確かにブラウザと一体化するFire VoxおよびCLiCk, Speakで可能な、ダイナミックに変化するタイプのコンテンツを追跡するという処理などは、外部スクリーンリーダが対応していない機能である。また双方の機能拡張では、AJAXコンテンツ対応のコントロール/ナビゲーション機能を提供するWorld Wide Web ConsortiumのAccessible Rich Internet Applications(WAI-ARIA)標準および、HTML読み上げ時の“オーラルマークアップ”プロパティを定義したCSS 3 Speech Moduleもサポートしている。

 最後に取り上げておくべき特長は、FirefoxのサポートするMathMLコンテンツの自動読み上げ機能であり、Abraham Nemeth氏により構築されたmathspeakメソッドに準拠することで、複雑な数式であっても曖昧性を残すことなく読み上げられるようになっている。