System.Speech.Recognition 命名空间
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
包含用于实现语音识别的 Windows 桌面语音技术类型。
类
枚举
AudioSignalProblem |
在转到语音识别引擎的音频信号中包含可能问题列表。 |
AudioState |
音频输入到语音识别引擎包含可能状态列表。 |
DisplayAttributes |
列出 SpeechRecognitionEngine 可用于为显示单词或标点符号指定空白的选项。 |
RecognizeMode |
枚举识别模式的值。 |
RecognizerState |
枚举识别器状态的值。 |
SubsetMatchingMode |
枚举匹配模式的子集值。 |
注解
Windows 桌面语音技术软件提供基本的语音识别基础结构,可数字化声学信号,并从音频输入中恢复字词和语音元素。
应用程序使用 System.Speech.Recognition 命名空间来访问和扩展此基本语音识别技术,方法是定义用于识别和处理特定短语或字词模式的算法,以及管理此语音基础结构的运行时行为。
创建语法
创建由一组规则或约束组成的语法,用于定义应用程序将识别为有意义的输入的字词和短语。 使用 类的 Grammar 构造函数,可以在运行时从 GrammarBuilder 或 SrgsDocument 实例、文件、字符串或包含语法定义的流创建语法对象。
GrammarBuilder使用 和 Choices 类,可以编程方式创建低到中等复杂度的语法,这些语法可用于对许多常见方案执行识别。 若要以编程方式创建符合 语音识别语法规范 1.0 (SRGS) 的语法,并利用 SRGS 的创作灵活性,请使用 命名空间的类型 System.Speech.Recognition.SrgsGrammar 。 还可以使用任何文本编辑器创建 XML 格式的 SRGS 语法,并使用结果创建 GrammarBuilder、 SrgsDocument 或 Grammar 对象。
此外, DictationGrammar 类提供了一种特殊情况语法来支持传统的听写模型。
有关详细信息和示例,请参阅 .NET Framework 系统语音编程指南中的创建语法。
管理语音识别引擎
SpeechRecognizer和 SpeechRecognitionEngine 随 对象一起Grammar提供的 实例提供对 Windows 桌面语音技术的语音识别引擎的主要访问权限。
可以使用 SpeechRecognizer 类创建使用 Windows 提供的语音识别技术的客户端应用程序,可以通过 控制面板进行配置。 此类应用程序通过计算机的默认音频输入机制接受输入。
若要更好地控制识别引擎的配置和类型,请使用 SpeechRecognitionEngine在进程内运行 的应用程序。 SpeechRecognitionEngine使用 类,还可以从设备、文件或流中动态选择音频输入。
有关详细信息,请参阅 .NET Framework 的系统语音编程指南中的初始化和管理语音识别引擎。
响应事件
SpeechRecognizer 和 SpeechRecognitionEngine 对象生成事件以响应语音识别引擎的音频输入。 、AudioLevelUpdated
AudioSignalProblemOccurred
、 AudioStateChanged
事件是为了响应传入信号中的更改而引发的。
SpeechDetected
当语音识别引擎将传入音频标识为语音时,将引发 事件。 语音识别引擎在将语音输入与其加载的语法之一匹配时引发 SpeechRecognized
事件,当语音输入与其任何加载的语法不匹配时引发 SpeechRecognitionRejected
。
其他类型的事件包括 LoadGrammarCompleted
语音识别引擎在加载语法时引发的事件。
StateChanged是 类的独占SpeechRecognizer,当 Windows 语音识别的状态发生更改时,类会引发 事件。
你可以注册以获取语音识别引擎引发的事件的通知,并使用 EventsArgs
与其中每个事件关联的类创建处理程序,以便在引发事件时对应用程序的行为进行编程。
有关详细信息,请参阅 .NET Framework 系统语音编程指南中的使用语音识别事件。