你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

SourceLanguageRecognizer 类

定义

检测输入音频上的口语。 在版本 1.17.0 中添加

public sealed class SourceLanguageRecognizer : Microsoft.CognitiveServices.Speech.Recognizer
type SourceLanguageRecognizer = class
    inherit Recognizer
Public NotInheritable Class SourceLanguageRecognizer
Inherits Recognizer
继承
SourceLanguageRecognizer

示例

此示例使用来自麦克风的源语言识别器,并接收识别器生成的事件。

public async Task SourceLanguageContinuousRecognitionAsync()
{
    // 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");
    config.SetProperty(PropertyId.SpeechServiceConnection_ContinuousLanguageIdPriority, "Latency");

    // Creates a source language recognizer from microphone.
    using (var sourceLanguageRecognizer = new SourceLanguageRecognizer(config))
    {
        sourceLanguageRecognizer.Recognized += (s, e) => {
            var result = e.Result;
            Console.WriteLine($"Reason: {result.Reason.ToString()}");
            if (result.Reason == ResultReason.RecognizedSpeech)
            {
                var lidResult = AutoDetectSourceLanguageResult.FromResult(e.Result);
                Console.WriteLine($"RECOGNIZED: Language={lidResult.Language}");
            }
        };

        sourceLanguageRecognizer.Canceled += (s, e) => {
            Console.WriteLine($"\n    Canceled. Reason: {e.Reason.ToString()}, CanceledReason: {e.Reason}");
        };

        sourceLanguageRecognizer.SessionStarted += (s, e) => {
            Console.WriteLine("\n    Session started event.");
        };

        sourceLanguageRecognizer.SessionStopped += (s, e) => {
            Console.WriteLine("\n    Session stopped event.");
        };

        // Starts continuous recognition. 
        // Uses StopContinuousRecognitionAsync() to stop recognition.
        await sourceLanguageRecognizer.StartContinuousRecognitionAsync().ConfigureAwait(false);

        do
        {
            Console.WriteLine("Press Enter to stop");
        } while (Console.ReadKey().Key != ConsoleKey.Enter);

        // Stops recognition.
        await sourceLanguageRecognizer.StopContinuousRecognitionAsync().ConfigureAwait(false);
    }
}

注解

请参阅 语言标识 文档。

构造函数

SourceLanguageRecognizer(SpeechConfig, AutoDetectSourceLanguageConfig)

创建 SourceLanguageRecognizer 的新实例,该实例根据不同的 languageId 模式和优先级确定源语言。

SourceLanguageRecognizer(SpeechConfig, AutoDetectSourceLanguageConfig, AudioConfig)

创建 SourceLanguageRecognizer 的新实例。

字段

disposed

disposed 是一个标志,用于指示是否释放对象。

(继承自 Recognizer)
gch

上下文回调的 GC 句柄。

(继承自 Recognizer)
isDisposing

指示当前是否正在释放对象。

(继承自 Recognizer)
pointerHandle

用于日志记录的内部。

(继承自 Recognizer)
recognizerLock

recognizerLock 用于从多个线程同步对对象成员变量的访问

(继承自 Recognizer)

属性

AuthorizationToken

获取或设置用于与服务通信的授权令牌。

注意:代码需要确保授权令牌有效。 在授权令牌过期之前,代码需要通过使用新的有效令牌调用此资源库来刷新它。 否则,识别器将在识别过程中生成错误。

OutputFormat

获取输出格式设置。

Properties

为此 定义的 SourceLanguageRecognizer属性及其值的集合。 注意:属性集合仅在释放或完成拥有此属性的识别器之前有效。

方法

Dispose()

释放关联的资源。

(继承自 Recognizer)
Dispose(Boolean)

此方法执行资源的清理。 Boolean 参数 disposing 指示方法是从 Dispose() ((如果 disposing 为 true) )调用,还是从终结器 (调用(如果 disposing 为 false) )。 派生类应重写此方法,以便根据需要释放资源。

(继承自 Recognizer)
Finalize()

检测输入音频上的口语。 在版本 1.17.0 中添加

RecognizeOnceAsync()

将源语言识别作为异步操作启动。

StartContinuousRecognitionAsync()

在连续音频流上启动源语言识别,直到调用 StopContinuousRecognitionAsync () 。 必须订阅事件才能接收识别结果。

StopContinuousRecognitionAsync()

尽快停止正在运行的识别操作,并根据到目前为止已处理的输入立即请求结果。 这适用于所有识别操作,而不仅仅是连续识别操作,并有助于使用一键通或“立即完成”按钮进行手动音频终结点。

事件

Canceled

该事件 Canceled 指示已取消语音到源语言识别。

Recognized

事件 Recognized 指示已收到最终识别结果。

SessionStarted

定义会话启动事件的事件处理程序。

(继承自 Recognizer)
SessionStopped

定义会话停止事件的事件处理程序。

(继承自 Recognizer)
SpeechEndDetected

为检测到的语音结束事件定义事件处理程序。

(继承自 Recognizer)
SpeechStartDetected

为检测到的语音启动事件定义事件处理程序。

(继承自 Recognizer)

适用于