speak.jsはHTML5を使ってクライアントサイドだけでテキスト音声読み上げを実現するJavaScriptライブラリです。

speak.jsはHTML5/JavaScript製のオープンソース・ソフトウェア。コンピュータの世界で常に望まれてきたのがテキストと音声の融合です。人が話せば音声を解析してテキストにし、逆にテキストを書けばコンピュータがしゃべるといった具合です。


幾つかのパラメータがある

そうした技術はOSレベルで実現されていますが、実用的かと言われるとまだまだ遠いかも知れません。さらにAndroidやiOSのようなスマートフォンでも音声による指示が可能になっています。そして今回紹介するspeak.jsはWebベースでテキスト読み上げを実現するライブラリになっています。

Text-to-Speechは昔からありますが、それをWebベースで実現してしまった所がユニークです。さらにこのspeak.jsはサーバサイドの仕組みを使っていません。eSpeakというC++製の音声読み上げライブラリをJavaScriptにポーティングしているのが特徴です。


ちょっとノイズが多い

speak関数に読み上げたい文字を当てはめるだけで使え、さらにビッチやスピードも変更できます。英語以外の音声にも対応しています。音声ファイルはdata URIを使ってWavファイルとして出力されます。HTML5のAudioタグを使っているため、さらにHTML5をサポートしていても一部のブラウザでは動かないようなのでご注意を。

MOONGIFT

音声は明瞭ではなく、ちょっとノイズが混ざったような音声になってしまうのが残念ですがWebブラウザだけで音声読み上げを実現してしまう技術力は目を見張るものがあります。元々はC++であったコードを変換しているため、かなり大きなJavaScriptファイルになっています。しかもそのコードもかなり数字の羅列ばかりです。

もっと軽量に動作するならばWebサイトに貼付けておくだけで使えるテキストライブラリにもなるかも知れません。そうすれば歩きながらも記事が聞けるようになったり、今と違うスタイルでの情報収集が実現することでしょう。

デモ:speak.js: Text-to-Speech on the Web

kripken/speak.js - GitHub