Freigeben über


Speech Recognition and its "off" state

Recently we got some feedback from the Vista beta newsgroups about how the recognizer switches between "Listening" mode and "Off" or "Sleep" mode.

 

Currently, if you're running on AC power, and you say "Stop Listening" or you press the "Control-Windows" SR hotkey, or you click our on-screen microphone button, the recognizer will enter a "Sleeping" mode. In this sleeping mode, the recognizer only listens for "Start Listening" to wake up.

 

However, if you're not on AC power, and instead you're running off batteries, when you toggle the "Listening" state, the recognizer will turn completely off. It won't be listening at all (unless you specifically go to the "Sleeping" state by selecting it from the context menu).

 

This is the default behavior.

 

Our thinking was this ... If you're on battery power, you likely don't want the speech recognizer running all the time, because when it runs, it consumes more power than your typical feature does (lots of disk/memory access, not to mention keeping the audio system up and running pulling audio data off the bus so rapidly).

 

Now having said that, we do also understand that you might want to be able to run the system on batteries and still have the "listening/sleeping" toggle. To do that, you have two options.

1.) Instead of saying "Stop listening", you could say "Show speech options", and then say "Sleeping", or

2.) You can change a registry key to a different value and thus have the behavior you want. That registry key is HKEY_CURRENT_USER\Software\Microsoft\Speech\Preferences. The value name is "ModeForOff" (all one word, no spaces). It's a DWORD. And the possible values are:

    0 == OFF_BATTERY (sleeping when on AC power, off when on batteries)

    1 == OFF_OFF (truely OFF when "off" regardless of AC/battery power)

    2 == OFF_SLEEPING (sleeping when "off" regardless of AC/battery power)

 

Currently we have no UI to configure or set this value. The default is currently OFF_BATTERY (aka 0).

 

Do you like that default? Would you like to see a different default? Would you like to see some UI to set it in our context menu or elsewhere?

 

Let us know...

Comments