標籤:
在.NET4.0中,我可以藉助System.Speech組件讓電腦來識別我們的聲音。
以上,當我說"name",顯示"Darren",我說"age",顯示"永遠21"。如何做呢?
首先要開啟電腦的語音辨識功能。
右鍵電腦右下方的擴音器,選擇"錄音裝置"。
點擊預設的"麥克風",再點擊左下角的"配置"按鈕。
點擊"啟動語音辨識"。
一系列簡單設定後,螢幕上出現如下:
在VS中建立一個表單應用程式,介面上有一個RichTextBox和2個Button。
添加System.Speech的引用。
編寫如下:
public partial class Form1 : Form
{ SpeechRecognitionEngine recEngine = new SpeechRecognitionEngine();
public Form1()
{ InitializeComponent();
}
private void btnEnable_Click(object sender, EventArgs e)
{ recEngine.RecognizeAsync(RecognizeMode.Multiple);
btnDisable.Enabled = true;
}
private void Form1_Load(object sender, EventArgs e)
{ Choices preCmd = new Choices();
preCmd.Add(new string[] { "name", "age" }); GrammarBuilder gb = new GrammarBuilder();
gb.Append(preCmd);
Grammar gr = new Grammar(gb);
recEngine.LoadGrammarAsync(gr);
recEngine.SetInputToDefaultAudioDevice();
recEngine.SpeechRecognized += recEngine_SpeechRecognized;
}
void recEngine_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{ switch (e.Result.Text)
{ case "name":
richTextBox1.Text += "\nDarren";
break;
case "age":
richTextBox1.Text += "\n永遠21";
break;
}
}
private void btnDisable_Click(object sender, EventArgs e)
{ recEngine.RecognizeAsyncStop();
btnDisable.Enabled = false;
}
}
當然,中文的語音辨識也是可以滴。
好玩Y(^_^)Y
玩一下C#的語音辨識