dictation-toolbox / Caster

Dragonfly-Based Voice Programming and Accessibility Toolkit
https://dictation-toolbox.github.io/Caster/
Other
340 stars 121 forks source link

Implemented mic sleep timer #856

Closed LexiconCode closed 3 years ago

LexiconCode commented 3 years ago

Description

Ping @kendonB

This implements Caster mic sleep timer. This allows the microphone for you go to sleep after X seconds for all speech recognition engines based on the last successful recognition.

Motivation and Context

It's easy to forget that your microphone is "on" causing unwanted recognition when a user's attention is preoccupied. Having a timeout for the microphone go to sleep minimizes unwanted recognition.

How Has This Been Tested

This is been tested with DNS/DPI

Note DNS/DPI has its own built-in sleep mode timer defaults to 5 minutes. Caster mic sleep timer will not work as expected beyond DNS/DPI 5 minutes default timer (microphone will go to sleep prematurely). if you increase the default timer to greater than 5 minutes anything under caster mic sleep timer will work as expected.

Todo: mock settings for unit test

Types of changes

Checklist

Maintainer/Reviewer Checklist

kendonB commented 3 years ago

@LexiconCode on Kaldi there's a limitation in that the timer is not on until you load the sleeping grammar and that is only loaded once you first say "caster sleep" or "caster on". Is there a way we can turn this on right when caster starts?

LexiconCode commented 3 years ago

@LexiconCode on Kaldi there's a limitation in that the timer is not on until you load the sleeping grammar and that is only loaded once you first say "caster sleep" or "caster on". Is there a way we can turn this on right when caster starts?

Hmm that’s a good point. I can fix that.