Last reviewed: 8/7/2009
Article ID: H080903
HOW: Determining microphone setting sweet spot
The information in this article applies to:
- ProfileKit 3
Speech recognition quality is directly impacted by the audio stream. If the microphone level is too high or too low, then the recognition quality is compromised.
ProfileKit 3 provides a simple way to object the Speech API-specific audio level at which minimal noise detection occurs.
Background noise can interfere with recognition. This can be noise from conversations and audio from radios or televisions. It can be noise from light fixtures or air conditioning systems. The ChantPM class provides a new method or obtaining the microphone sweet spot: GetSweetSpot.
GetSweetSpot sets the inbound audio device level and returns the value mapped to the specific speech API range of values. The returned value can be used with the ChantSR SetNumberProperty method to set the CNPVolume value (not supported by Dragon NaturallSpeaking). This may be required for SAPI 5 recognizers on some systems since it will disregard the inbound audio level settings.
The following example illustrates obtaining the microphone sweet spot:
// Get the audio level int volume = NChantPM1.GetSweetSpot(-1, ChantEngineAPI.CESAPI5SR, ChantAcousticEnvironment.CAEOffice); // Set the audio level for the recognizer NChantSR1.SetNumberProperty(ChantNumberProperty.CNPVolume, volume);
Refer to programming language specific syntax in the help file Class Library Reference.