Edited at

Google Speech API をストリームで利用してみた

More than 3 years have passed since last update.


結果


読み上げて貰った文章

世界15カ国参加し、日本実験棟「きぼう」も大きなミッションを担う、ISS国際宇宙ステーション。

雑誌に載っていた文章を読み上げて貰いました。ボーイング社の広告のようです。


解析結果

Web カメラのマイクを利用しました。

$ python speech_streaming.py

D0727 13:56:17.086594000 140735233819392 ev_posix.c:101] Using polling engine: poll
2016-07-27T13:56:18.943154:セ
2016-07-27T13:56:19.064879:世界
2016-07-27T13:56:19.367404:世界中
2016-07-27T13:56:19.668107:世界15
2016-07-27T13:56:19.860324:世界中国
2016-07-27T13:56:20.049902:世界15過去
2016-07-27T13:56:20.139107:世界十五か国
2016-07-27T13:56:20.358978:世界十五か国が
2016-07-27T13:56:20.461123:世界十五か国傘
2016-07-27T13:56:20.648383:世界十五か国が3
2016-07-27T13:56:20.752554:世界15カ国が参加
2016-07-27T13:56:20.995442:世界15カ国が参加し
2016-07-27T13:56:21.550292:世界15カ国が参加し
2016-07-27T13:56:21.651869:世界15カ国が参加しに
2016-07-27T13:56:21.847325:世界15カ国が参加し日本
2016-07-27T13:56:22.153257:世界15カ国が参加しにほんじ
2016-07-27T13:56:22.170981:世界15カ国が参加し日本人
2016-07-27T13:56:22.545805:世界15カ国が参加し日本実験
2016-07-27T13:56:22.954593:世界15カ国が参加し日本実験棟
2016-07-27T13:56:23.469748:世界15カ国が参加し日本実験時
2016-07-27T13:56:23.536284:世界15カ国が参加し日本実験棟きぼう
2016-07-27T13:56:24.049674:世界15カ国が参加し日本実験棟きぼうも
2016-07-27T13:56:24.265607:世界15カ国が参加し日本実験棟きぼうもお
2016-07-27T13:56:24.366998:世界15カ国が参加し日本実験棟きぼうも大き
2016-07-27T13:56:24.555147:世界15カ国が参加し日本実験棟きぼうも大きな
2016-07-27T13:56:24.847909:世界15カ国が参加し日本実験棟きぼうも大きな3
2016-07-27T13:56:24.855303:世界15カ国が参加し日本実験棟きぼうも大きなミス
2016-07-27T13:56:25.139112:世界15カ国が参加し日本実験棟きぼうも大きなミッション
2016-07-27T13:56:25.345494:世界15カ国が参加し日本実験棟きぼうも大きなミッションを
2016-07-27T13:56:25.549064:世界15カ国が参加し日本実験棟きぼうも大きなミッション鬼
2016-07-27T13:56:25.567375:世界15カ国が参加し日本実験棟きぼうも大きなミッション女
2016-07-27T13:56:25.841612:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う
2016-07-27T13:56:26.442310:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う
2016-07-27T13:56:26.756121:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う
2016-07-27T13:56:26.756161: ie
2016-07-27T13:56:26.858101:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う
2016-07-27T13:56:26.858141: is
2016-07-27T13:56:27.135222:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う
2016-07-27T13:56:27.135263: isa
2016-07-27T13:56:27.258627:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う
2016-07-27T13:56:27.258668: iss
2016-07-27T13:56:27.659842:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う
2016-07-27T13:56:27.659883: iss 黒
2016-07-27T13:56:27.848638:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う
2016-07-27T13:56:27.848678: iss 国際
2016-07-27T13:56:27.848936:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う iss
2016-07-27T13:56:27.848961: 国際
2016-07-27T13:56:28.250701:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う iss
2016-07-27T13:56:28.250742: 国際宇宙
2016-07-27T13:56:28.754635:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う iss
2016-07-27T13:56:28.754676: 国際宇宙ステー
2016-07-27T13:56:28.847425:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う iss 国際宇宙
2016-07-27T13:56:29.039263:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う iss
2016-07-27T13:56:29.039305: 国際宇宙ステーション
2016-07-27T13:56:29.647425:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う iss 国際宇宙ステーション
2016-07-27T13:56:30.006012:世界15カ国が参加し日本実験棟きぼうも大きなミッションを担う iss 国際宇宙ステーション


目的

Google Speech API でバッチ処理的なのを試している人はいたのですが、ストリームを試している人がいなかったので、確認してみたかったというのが一番の目的です。


内容

公開されているサンプルコードをいじって動かしてみました。

ベースはこれです

https://github.com/GoogleCloudPlatform/python-docs-samples/blob/master/speech/grpc/transcribe_streaming.py

Python 3.5 で PyAudio は portaudio を MacPorts で入れて、その後 pip install で pyaudio を入れました。


感想

無圧縮なこともあり、音声の解析スピードがおかしいことになっています。遅延は 1 秒ありません。

かなり凄い認識率ですし、これだけの速度が出せるのはびっくりしました。


資料