Speak.jsはJavaScriptだけでテキストを読み上げるソフトウェアです。

Webブラウザで音声ファイルを指定してJavaScriptで解析、なんてソフトウェアもありますが今回は一から“音声”を生み出してしまう驚きのソフトウェア、Speak.jsを紹介します。

[![](http://images.moongift.jp/2013/02/Screenshot 2013-02-04 11.06.32_thumb.1360030027.png)](http://images.moongift.jp/2013/02/Screenshot 2013-02-04 11.06.32.1360030027.png)
ボタンを押すとHello Worldと話します。

[![](http://images.moongift.jp/2013/02/Screenshot 2013-02-04 11.06.56_thumb.1360030031.png)](http://images.moongift.jp/2013/02/Screenshot 2013-02-04 11.06.56.1360030031.png)
こんな感じで任意の言葉を話させることもできます。

Speak.jsはジェネレータを通じて音声を動的に生み出します。対応しているのは英数字のみとなっており、日本語には対応していません。常に動的に生成しているので自由なテキストを読み上げさせることができます。

Speak.jsはJavaScript製のオープンソース・ソフトウェア(GPL)です。

MOONGIFTはこう見る

テキストを外部サーバに送って、それを音声ファイルにして返すAPIも世の中にはあります。当然、こちらの方が英語を研究している分、よりネイティブに近い形で読み上げが可能でしょう。しかし一定のアルゴリズムに沿って音声を生成してしまうというのがSpeak.jsの面白さです。

英語の場合、表記と読み方が異なる分、より複雑と言えそうです。しかし日本語は表記と音声が同一であるため、漢字を使ったとしても読みさえ分かれば人が理解できる読み上げが可能なはずです。その意味では日本語版がとても面白いことになりそうなソフトウェアでもあります。

Speak.js Demo

mattytemple/speak-js · GitHub