我正在尝试构建解释各种文本命令的软件,全部以自定义的方式.我使用System.Speech.Recognition,它的效果令人惊讶,但我无法理解如何解决这个事实:每当我说“删除”,“关闭”,“正确”等时,我将最终得到默认
Windows(7)实现.有没有办法绕过System.Speech.Recognition?如果没有,你最推荐哪个C#.NET库?
解决方法
使用SpeechRecognitionEngine而不是SpeechRecognizer.
尝试这个:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Speech.Recognition; namespace speech { class Program { static void Main(string[] args) { SpeechRecognitionEngine mynizer = new SpeechRecognitionEngine(); GrammarBuilder builder = new GrammarBuilder(); builder.AppendDictation(); Grammar mygram = new Grammar(builder); mynizer.SetInputToDefaultAu@R_301_410@Device(); mynizer.LoadGrammar(mygram); while (true) { Console.WriteLine(mynizer.Recognize().Text); } } } }