你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
SpeechRecognizer 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将语音转录为文本。 语音可以通过麦克风、音频文件或其他音频输入流到达。
public sealed class SpeechRecognizer : Microsoft.CognitiveServices.Speech.Recognizer
type SpeechRecognizer = class
inherit Recognizer
Public NotInheritable Class SpeechRecognizer
Inherits Recognizer
- 继承
示例
此示例使用来自麦克风的语音识别器,并侦听识别器生成的事件。
public async Task SpeechContinuousRecognitionAsync()
{
// Creates an instance of a speech config with specified subscription key and region.
// Replace with your own subscription key and service region (e.g., "westus").
var config = SpeechConfig.FromSubscription("YourSubscriptionKey", "YourServiceRegion");
// Creates a speech recognizer from microphone.
using (var recognizer = new SpeechRecognizer(config))
{
// Subscribes to events.
recognizer.Recognizing += (s, e) => {
Console.WriteLine($"RECOGNIZING: Text={e.Result.Text}");
};
recognizer.Recognized += (s, e) => {
var result = e.Result;
Console.WriteLine($"Reason: {result.Reason.ToString()}");
if (result.Reason == ResultReason.RecognizedSpeech)
{
Console.WriteLine($"Final result: Text: {result.Text}.");
}
};
recognizer.Canceled += (s, e) => {
Console.WriteLine($"\n Canceled. Reason: {e.Reason.ToString()}, CanceledReason: {e.Reason}");
};
recognizer.SessionStarted += (s, e) => {
Console.WriteLine("\n Session started event.");
};
recognizer.SessionStopped += (s, e) => {
Console.WriteLine("\n Session stopped event.");
};
// Starts continuous recognition.
// Uses StopContinuousRecognitionAsync() to stop recognition.
await recognizer.StartContinuousRecognitionAsync().ConfigureAwait(false);
do
{
Console.WriteLine("Press Enter to stop");
} while (Console.ReadKey().Key != ConsoleKey.Enter);
// Stops recognition.
await recognizer.StopContinuousRecognitionAsync().ConfigureAwait(false);
}
}
注解
另请参阅: 语音转文本入门
构造函数
SpeechRecognizer(EmbeddedSpeechConfig) |
使用 EmbeddedSpeechConfig 创建 SpeechRecognizer 的新实例,该实例配置为从默认麦克风接收语音。 在 1.19.0 中添加 |
SpeechRecognizer(EmbeddedSpeechConfig, AudioConfig) |
使用 EmbeddedSpeechConfig 创建 SpeechRecognizer 的新实例,该实例配置为从 AudioConfig 对象中指定的音频源接收语音。 在 1.19.0 中添加 |
SpeechRecognizer(EmbeddedSpeechConfig, AutoDetectSourceLanguageConfig) |
使用 EmbeddedSpeechConfig 创建 SpeechRecognizer 的新实例,该实例根据选项列表确定源语言。 在 1.20.0 中添加 |
SpeechRecognizer(EmbeddedSpeechConfig, AutoDetectSourceLanguageConfig, AudioConfig) |
使用 EmbeddedSpeechConfig 创建 SpeechRecognizer 的新实例,该实例根据选项列表确定源语言。 在 1.20.0 中添加 |
SpeechRecognizer(HybridSpeechConfig) |
使用 HybridSpeechConfig 创建 SpeechRecognizer 的新实例,该实例配置为从默认麦克风接收语音。 |
SpeechRecognizer(HybridSpeechConfig, AudioConfig) |
使用 HybridSpeechConfig 创建 SpeechRecognizer 的新实例,该实例配置为从 AudioConfig 对象中指定的音频源接收语音。 |
SpeechRecognizer(HybridSpeechConfig, AutoDetectSourceLanguageConfig) |
使用 HybridSpeechConfig 创建 SpeechRecognizer 的新实例,该实例根据选项列表确定源语言。 |
SpeechRecognizer(HybridSpeechConfig, AutoDetectSourceLanguageConfig, AudioConfig) |
使用 HybridSpeechConfig 创建 SpeechRecognizer 的新实例,该实例根据选项列表确定源语言。 |
SpeechRecognizer(SpeechConfig) |
创建配置为从默认麦克风接收语音的 SpeechRecognizer 的新实例。 |
SpeechRecognizer(SpeechConfig, AudioConfig) |
创建配置为从 AudioConfig 对象中指定的音频源接收语音的 SpeechRecognizer 的新实例。 |
SpeechRecognizer(SpeechConfig, AutoDetectSourceLanguageConfig) |
创建 SpeechRecognizer 的新实例,该实例根据选项列表确定源语言。 在 1.9.0 中添加 |
SpeechRecognizer(SpeechConfig, AutoDetectSourceLanguageConfig, AudioConfig) |
创建 SpeechRecognizer 的新实例。 在 1.9.0 中添加 |
SpeechRecognizer(SpeechConfig, SourceLanguageConfig) |
创建 SpeechRecognizer 的新实例。 在 1.9.0 中添加 |
SpeechRecognizer(SpeechConfig, SourceLanguageConfig, AudioConfig) |
创建 SpeechRecognizer 的新实例。 在 1.9.0 中添加 |
SpeechRecognizer(SpeechConfig, String) |
创建配置为接收特定语言语音的 SpeechRecognizer 的新实例。 在 1.9.0 中添加 |
SpeechRecognizer(SpeechConfig, String, AudioConfig) |
创建配置为从 AudioConfig 对象中指定的音频源接收特定语言语音的 SpeechRecognizer 的新实例。 在 1.9.0 中添加 |
字段
disposed |
disposed 是一个标志,用于指示是否释放对象。 (继承自 Recognizer) |
gch |
上下文回调的 GC 句柄。 (继承自 Recognizer) |
isDisposing |
指示当前是否正在释放对象。 (继承自 Recognizer) |
pointerHandle |
用于日志记录的内部。 (继承自 Recognizer) |
recognizerLock |
recognizerLock 用于同步对来自多个线程的对象成员变量的访问 (继承自 Recognizer) |
属性
AuthorizationToken |
获取或设置用于与服务通信的授权令牌。 注意:代码需要确保授权令牌有效。 在授权令牌过期之前,代码需要通过使用新的有效令牌调用此资源库来刷新它。 否则,识别器将在识别过程中生成错误。 |
EndpointId |
获取用于语音识别的自定义语音模型的终结点 ID。 |
OutputFormat |
获取输出格式设置。 |
Properties |
为此 SpeechRecognizer定义的属性及其值的集合。 注意:属性集合仅在释放或完成拥有此属性的识别器之前有效。 |
SpeechRecognitionLanguage |
获取创建识别器时设置的语言名称。 |
方法
Dispose() |
释放关联的资源。 (继承自 Recognizer) |
Dispose(Boolean) |
此方法执行资源清理。
布尔参数 |
Finalize() |
将语音转录为文本。 语音可以通过麦克风、音频文件或其他音频输入流到达。 |
RecognizeOnceAsync() |
将语音识别作为异步操作启动。 |
StartContinuousRecognitionAsync() |
在调用 StopContinuousRecognitionAsync () 之前,以异步操作的形式对连续音频流启动语音识别。 必须订阅事件才能接收识别结果。 |
StartKeywordRecognitionAsync(KeywordRecognitionModel) |
使用给定的关键字 (keyword) 模型配置识别器。 调用此方法后,识别器正在侦听关键字 (keyword) 以启动识别。 调用 StopKeywordRecognitionAsync () 以结束关键字 (keyword) 发起的识别。 必须订阅事件才能接收识别结果。 |
StopContinuousRecognitionAsync() |
尽快停止正在运行的识别操作,并根据到目前为止已处理的输入立即请求结果。 这适用于所有识别操作,而不仅仅是连续操作,并且有助于使用“一键通”或“立即完成”按钮进行手动音频终结点。 |
StopKeywordRecognitionAsync() |
结束关键字 (keyword) 发起的识别。 |
事件
Canceled |
事件 Canceled 指示语音识别已取消。 |
Recognized |
事件 Recognized 指示已收到最终识别结果。 |
Recognizing |
事件 Recognizing 指示收到中间识别结果。 |
SessionStarted |
定义会话启动事件的事件处理程序。 (继承自 Recognizer) |
SessionStopped |
为会话停止事件定义事件处理程序。 (继承自 Recognizer) |
SpeechEndDetected |
为检测到的语音结束事件定义事件处理程序。 (继承自 Recognizer) |
SpeechStartDetected |
为检测到的语音启动事件定义事件处理程序。 (继承自 Recognizer) |