Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

音声認識の停止ボタンを追加する #4

Open
yoidea opened this issue Jan 2, 2021 · 8 comments
Open

音声認識の停止ボタンを追加する #4

yoidea opened this issue Jan 2, 2021 · 8 comments
Labels
enhancement New feature or request

Comments

@yoidea
Copy link
Member

yoidea commented Jan 2, 2021

No description provided.

@yoidea yoidea added the enhancement New feature or request label Jan 2, 2021
@rossy0213 rossy0213 reopened this Jan 5, 2021
@rossy0213
Copy link
Member

停止ボタンについて、実装しようとしたが、以下のことで一旦中止。
識者いれば助けてください。

  1. Android対応(仕様?で自動停止する)の兼ね合いで、フラグを増やす必要がある。
  2. SpeechRecognition APIのendメソッドを実行しても停止されない(仕様っぽい)。

@taka1156
Copy link

taka1156 commented Jan 13, 2021

これ参考になりませんか

https://developer.mozilla.org/ja/docs/Web/API/SpeechRecognition/stop

Web Speech API の stop() メソッドは音声認識のサービスを停止し、
入ってくる音声を聞かなくします。
後、今まで認識した音声を SpeechRecognitionResult として返します。

二重で結果入る(今まで認識した音)から停止時のデータは破棄しないとダメなのかな

@rossy0213
Copy link
Member

rossy0213 commented Jan 13, 2021

一応同じページを参考しながら実装していたですが、上のコメント2に書いた通りの作動にしかならないんですよね...

@taka1156
Copy link

taka1156 commented Jan 13, 2021

あとはこれですかね

https://teratail.com/questions/151938

もう一度やりたい時はSpeechRecognitionクラスを再生成してるっぽい?

それか、onresultにnull代入してテキストの更新防げないかな

@rossy0213
Copy link
Member

rossy0213 commented Jan 13, 2021

二重で結果入力されることに関してはおそらくバグって、力技で防げる気がします。
ただ、いろんな人に読んでもらう予定だったので、力技は入れないことを優先しました。

一応公式には認識されていて、直すと公言されているので、これを待ちたいところです。(スレッド見ている限り、あまり希望はないですが)

@taka1156
Copy link

音声認識じゃなくてテキスト更新の可否をフラグで管理とかだと微妙かな

認識してても追加されなければいいみたいな

@rossy0213
Copy link
Member

もう一度やりたい時はSpeechRecognitionクラスを再生成してるっぽい?

これはおそらく上のコメントの1と同じ問題に当たります。同じような方法も試したのですが、Androidの場合、onend()に再起動に入れる必要があって、初期化するとその辺りで不都合が出てきた覚えがあります。
ただ、全く同じことを試したわけではないので、触ってみてもいいかもしれないです。

@rossy0213
Copy link
Member

音声認識じゃなくてテキスト更新の可否をフラグで管理とかだと微妙かな

問題点ばっかりコメントしてしまってごめんなさい。
これに関しては、もしユーザーが同じ言葉を繰り返した場合、どう区別すべきかという問題を考える必要があります。簡単に区別できそうな方法が思いつかなかったので、更新フラグ使わないようにしていました。もし何かあればぜひ試してみて欲しいです。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants