Android1.5のバージョンノートや各種ニュース記事で、Androi1.5から音声認識に対応したことを知っていたのですが、
具体的なソースコードを紹介した記事がなかったため、
音声認識って言われても、「難しそう...」「どうせ、生(RAW)データの波形で飛んでくるんじゃないの?」
と、勝手に解釈していたのですが、実際にソースコードを書いて実行してみると、
インテントを発行しただけで、音声認識の画面が表示できるし、
試しに、ADP1に向かって「voice」と発音してみると、音声認識結果を文字列で取得できている(※3)。。。
「こいつ認識するぞ!」
「基本処理は、フレームワークがやってくれるのか」
その衝撃たるもの、アムロ・レイが初めてガンダムのコックピットに座って、マニュアル(※1)を片手に、
「こいつ動くぞ」「基本操作はコンピュータがやってくれるのか」(※2)と発した衝撃に似ている。
※1:ここでのマニュアルとは、Androidの公式リファレンス
(http://developer.android.com/reference/android/speech/RecognizerIntent.html)
※2:ガンダムでは、2本のレバー(+α)の操作で、複雑であろうロボットが動作するし、
Androidにおいても、数行の操作で、複雑であろう音声認識が動作する
※3:本当のところは、「voice」って発音しても、最初の数回は、「boy」って認識されちゃいました。。。
しかしながら、音声認識の性能が悪いのでなく、私の発音の性能が悪いせいだと言い聞かせました
詳細のソースコードのまとめ記事は、「音声認識(RecognizerIntent)を使用するには - 逆引きAndroid入門」にアップしました。
