使用语音识别输出单词

时间:2011-12-13 11:16:55

标签: c# speech-recognition

我现在正在使用windows7在C#中进行语音识别工作。我不知道我做错了什么。此代码不会出现任何错误,但同时它甚至不会识别任何内容,也不会响应......任何帮助都将非常感谢。

SpeechRecognitionEngine RecognitionEngine = new SpeechRecognitionEngine();
RecognitionEngine.SetInputToDefaultAudioDevice();
RecognitionResult Result = RecognitionEngine.Recognize();
StringBuilder Output = new StringBuilder();
foreach (RecognizedWordUnit word in Result.Words)
{
    Output.Append(word.Text);
}

2 个答案:

答案 0 :(得分:0)

  1. 确保您的输入设备正常工作。
  2. 尝试增加初始静音间隔(例如RecognitionEngine.Recognize(TimeSpan.FromSeconds(2))
  3. PS:如果我是你,我会使用异步识别

答案 1 :(得分:0)

你指定了语法吗?如果您使用的是Windows 7,则应指定并加载听写语法。类似的东西:

SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine();
Grammar dictationGrammar = new DictationGrammar();
recognizer.LoadGrammar(dictationGrammar);
recognizer.SetInputToDefaultAudioDevice();
RecognitionResult result = recognizer.Recognize();

有关我之前发布过的示例,请参阅SAPI and Windows 7 Problem