wit-unity
wit-unity copied to clipboard
Can I automatically deactivate voice transcription if the user is silent for more than N seconds?
Hello! I want to make Wit deactivate if the user is silent for more than N seconds after the last spoken phrase.
However, I cannot rely on the mic level due to possible background noise. So I made a timer that resets every time (if it's still active) when the OnPartialTranscription
or OnFullTranscription
event is called. When the timer expires, it deactivates the service.
But this solution is also not suitable due to the fact that sometimes there are network/server delays and the response comes too late, when the timer has already expired and Wit is deactivated even before the user stops talking.
Can you advise how I can achieve my goal?
Server side endpointing should be occurring. Unfortunately noisy environments can be tricky. Are you receiving transcriptions at all in the environment? It should endpoint after no new word is detected as well, but maybe you're noisy environment is picking up new words as well?
Silent after N seconds is a fallback mechanism in the event that server doesn't respond or endpoint.