見出し画像

QUIZウケイレロの実装技術

2020年のSNACKS Vol.3で体験検証展示として制作したQUIZウケイレロについての実装技術についてまとめていく。

QUIZウケイレロ ※Windows/MacのChromeのみ対応
https://024t910.github.io/quiz_2020/

本コンテンツは、HTMLベースの実装を基本として主にWeb Speech APIのSpeechRecognitionを用いて実装した。

・SpeechRecognition - Web API | MDN
https://developer.mozilla.org/ja/docs/Web/API/SpeechRecognition

音声認識系のAPIは現在では種類も増え、以前に比べて手軽に使えるようになったが、上記のSpeechRecongition APIはブラウザに実装されたAPIのため、ユーザー登録や従量課金などを気にせずに使える点が特徴である。

難点としては、実装ブラウザが少ないことで、 2021年3月現在ではChrome、Edge、WebView Android 、Chrome Androidでしか利用できない。(Firefoxはブラウザの設定からONにすると使える)

当初ブラウザにビルトインされたオフラインでの処理が走るのかと思っていたが、そんなことはなく上記のページによると、

Chrome では、ウェブページ上で音声認識を使用するとサーバーベースの認識エンジンが使用されます。あなたの音声を認識処理するためにウェブサービスへ送信するのでオフラインでは動作しません。

とのこと。未確認だが、もしかするとEdgeならオフラインで動作するかもしれない。

・Web Speech API Demonstration
https://www.google.com/intl/ja/chrome/demos/speech.htm

上記のデモページより言語と地域(たとえば英語なら12地域から)を選択して試せて、精度的にはそこそこのレベルで使えることが確認できる。

APIとしては認識の成否や結果の文字列などのシンプルな実装になっているが、上記のデモページでもわかるように認識の途中経過をSpeechRecognition.continuousプロパティをtrueにすることで受け取れることが興味深い。

一方で精度に関する調整パラメーターはほとんどなく、入力音声を認識処理に渡す前に加工するといったこともできないので、チューニングがほとんど出来ない点については使用前に考慮が必要になるだろう。


この記事が気に入ったらサポートをしてみませんか?