程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 玩一下C#的語音識別,

玩一下C#的語音識別,

編輯:C#入門知識

玩一下C#的語音識別,


在.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   

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved