我已经开始使用 .NET 语音到文本库 (SpeechRecognizer)
在谷歌搜索和搜索这个网站时,我发现了这个代码示例:
var c = new Choices();
for (var i = 0; i <= 100; i++)
c.Add(i.ToString());
var gb = new GrammarBuilder(c);
var g = new Grammar(gb);
rec.UnloadAllGrammars();
rec.LoadGrammar(g);
rec.Enabled = true;
这帮助我开始了。我改变了这两行
for (var i = 0; i <= 100; i++)
c.Add(i.ToString());
满足我的需要
c.Add("Open");
c.Add("Close");
但是,当我说“关闭”时,Windows 的语音识别器会关闭我的应用程序!
此外,有没有比创建自己的字典更好的识别语音的方法?我希望用户说类似这样的话:“给自己写个便条”,然后用户会说话,我会写。
很抱歉在同一个问题上问了 2 个问题,这两个问题似乎都与我的一个问题有关。
最佳答案
您正在使用共享语音识别器 (SpeechRecognizer)。当你实例化 SpeechRecognizer 你得到一个可以被其他应用程序共享的识别器,通常用于构建应用程序来控制桌面上运行的窗口和应用程序。
听起来你想使用自己的私有(private)识别引擎(SpeechRecognitionEngine)。因此,改为实例化一个 SpeechRecognitionEngine。
Disable built-in speech recognition commands?也可能有一些有用的信息。
Microsoft 的桌面识别器包括一种称为听写语法的特殊语法,可用于转录用户所说的任意单词。您可以使用听写语法来进行转录样式识别。参见 DictationGrammar Class和 SAPI and Windows 7 Problem
关于c# - 语音到文本禁用 Windows 自动处理程序并写下我说的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6547551/