【发布时间】:2011-03-29 00:42:30
【问题描述】:
我是语音识别的新手,我开发了一个文本编辑器,可以写下我对它说的话。我遇到了一个问题,我可以通过代码启用语音识别,但不能禁用它。谁能建议如何禁用语音识别。我的语音识别代码如下:
//function to start/stop speech recognition
private void enableSpeechRecognitionToolStripMenuItem_Click(object sender, EventArgs e)
{
listener = new SpeechLib.SpSharedRecoContext();
//crating a share recognition object
listener.Recognition += new _ISpeechRecoContextEvents_RecognitionEventHandler(listener_Reco);
//creating a recgnition event handler object
grammar = listener.CreateGrammar(0);
//create grammar interface with ID = 0
grammar.DictationLoad("", SpeechLoadOption.SLOStatic);
//setting grammar load type to static
grammar.DictationSetState(SpeechRuleState.SGDSActive);
//activating speech dictation
enableSpeechRecognitionToolStripMenuItem.Checked = true;
//checked
toolStripStatusLabel1.Text = "[Speech Recognition Enabled]";
}
//function to append the listened text to the text box's text
public void listener_Reco(int StreamNumber, object StreamPosition, SpeechRecognitionType RecognitionType, ISpeechRecoResult Result)
{
string heard = Result.PhraseInfo.GetText(0, -1, true);
//setting heard text to a variable
richTextBox1.Text += " " + heard;
//appending heard text
}
【问题讨论】: