本題
★実行環境
【OS】Windows 10
【実行環境】Edge
【プラットフォーム】javascript
【SDK 】 microsoft-cognitiveservices-speech-sdk(v.1.1.0)
★問題の現象
github.com
【SpeechRecognizer】クラスの
【startContinuousRecognitionAsync】メソッドを使い、
音声認識を実行していました。
話始めてから、話し続けている間は、問題なく動作します。
しかし
一定時間何も話さずに放置しておくと、音声認識が終了します。
議事録アプリやプレゼンの文字おこしアプリに使おうと思っていたので、
ある程度の話声のない時間でも、音声認識を維持する必要がありました。
参考)
帰ったら
— kinakomotitti (@dotnet_manjyu) 2019年4月20日
これとhttps://t.co/QQ6UQazrQ8
これhttps://t.co/JxJ5OMiJMH
を参考に、音声認識機能をブラッシュアップするんだ…
★対応
調べた範囲では、再開処理用のメソッドやイベントがなく、
音声認識のステータスが終了したことを通知するイベントも見当たらない…
と思ったとき、
ふとリリースノートを見てみると、音声の継続的な認識に関する修正がいろいろあることがわかりました!
docs.microsoft.com
ということは、SDKのバージョンを上げれば何とかなるのか…
という淡い期待のもと、2019年4月にリリースされたばかりの最新バージョン
【Version 1.4.1】
にアップデートして動作確認をしたところ、
音声が長時間途切れたとき(話声のない時間が長く続いたとき)でも
音声認識が継続して維持されることが確認できました。