-
Notifications
You must be signed in to change notification settings - Fork 227
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
Interrupt kalliope during a neuron #426
Comments
Hi @LePudim , eg:
|
Oh thanks @LaMonF . |
Could be a nice feature. I don't know how to implement it, but it would be nice. The problem is, if we keep Kalliope listening for a new order while she's is speaking, we risk to catch false positives. |
This feature could work through the stop command, that is, kalliope would only respond to a command during speech (all others were scorned / did not work) |
@LaMonF do we keep this opened? |
It is not the first time someone from the community asks for this feature. |
I do believe it is a great feature to have… |
How about using a second snowboy trigger, which is more or less independent from the kalliope core (maybe with the help of the REST API?). There we could use an unique trigger, to stop the current work and start the the on_waiting_for_trigger hook again. |
The snowboy process is killed after matching a hotword because it cost too much resource on a RPI. We cannot keep it alive. With some code refactoring we could have a neuron that stop the TTS process. And then the user could use it through the signal of his choice ( Button, mqtt, snowboy (not yet coded)). |
I'm not sure that the snowboy process is taking so much resources on PI. Also there was an issue where snowboy has taken 50% of cpu ussage which did't seem not to be normal according to a user, even 25% on pi 1 is to high. Maybe we can let the TTS process running in the background like @Sispheor do it with your Ambient_sound neuron, where we can stop it every time. I don't think we need to let anything else running except of the TTS process this way we can always interrupt the TTS. You can interrupt Alexa with her wake word and also mycroft has a skill to Interrupt the speaking. Btw I think we should update snowboy to the latest version, because there are now some universal models, like Alexa or Jarvis but for that we need the option ApplyFrontend . |
You cannot keep the STT (you wrote TTS but I suppose you are talking about the STT) process alive because this one need a start and a stop to know when it needs to analyse what you said. I made once a POC with snowboy active in background and it produce a lot of false positives, mostly if you have the microphone next to the speackers. |
Im talking about the TTS, that we can let it run in the background this way when Kalliope is speaking we can call the trigger again and maybe with a core neuron stop/kill the TTS from speaking. And to avoid that two instance of the TTSs are starting, we just stop the first one and start with the new. Also I don't have any problems with false positives, my microphone is only a few centimeters away of my television and speaker and even Im watching a movie with surround sound, its pretty rare that it activate, I think that's just a matter of adjustment of the snowboy model, like playing with the sensitivity etc. |
Yes the TTS could be placed in a thread. But this is not this issue here. |
I think its exactly the issue here, the TO ask what he can do if he don't wont to hear all of the text from wikipedia for example. And the text comes out from the TTS so in my opinion its exactly the issue, so letting the TTS run in a thread and give a neuron the ability to stop this thread, we are able to interrupt it. |
The current design doesn't allow that. The LIFO for processing orders is unique. You cannot have two execution in the mean time. |
Hi,
I need help to know how can I interrupt kalliope during a working neuron. For example: When kalliope search something on wikipedia sometimes come a big texts and I don't want to hear all text.
What can I do?
The text was updated successfully, but these errors were encountered: