指定语音转文本的源语言

本文介绍如何指定某个传递给语音 SDK 进行语音识别的音频输入的源语言。 本文提供的示例代码指定了一个用于改进识别的自定义语音识别模型。

在 C# 中指定源语言

以下示例使用 SpeechRecognizer 构造以参数的形式显式提供源语言:

var recognizer = new SpeechRecognizer(speechConfig, "de-DE", audioConfig);

以下示例使用 SourceLanguageConfig 提供源语言。 然后,将 sourceLanguageConfig 作为参数传递给 SpeechRecognizer 构造。

var sourceLanguageConfig = SourceLanguageConfig.FromLanguage("de-DE");
var recognizer = new SpeechRecognizer(speechConfig, sourceLanguageConfig, audioConfig);

以下示例使用 SourceLanguageConfig 提供源语言和自定义终结点。 然后,将 sourceLanguageConfig 作为参数传递给 SpeechRecognizer 构造。

var sourceLanguageConfig = SourceLanguageConfig.FromLanguage("de-DE", "The Endpoint ID for your custom model.");
var recognizer = new SpeechRecognizer(speechConfig, sourceLanguageConfig, audioConfig);

备注

在 C# 中,SpeechConfig 类中的 SpeechRecognitionLanguageEndpointId set 方法已弃用。 不建议使用这些方法。 请勿在创建 SpeechRecognizer 构造时使用。

在 C++ 中指定源语言

以下示例使用 FromConfig 方法以参数的形式显式提供源语言。

auto recognizer = SpeechRecognizer::FromConfig(speechConfig, "de-DE", audioConfig);

以下示例使用 SourceLanguageConfig 提供源语言。 然后,在创建 recognizer 构造时,sourceLanguageConfig 会作为参数传递给 FromConfig

auto sourceLanguageConfig = SourceLanguageConfig::FromLanguage("de-DE");
auto recognizer = SpeechRecognizer::FromConfig(speechConfig, sourceLanguageConfig, audioConfig);

以下示例使用 SourceLanguageConfig 提供源语言和自定义终结点。 然后,在创建 recognizer 构造时,sourceLanguageConfig 会作为参数传递给 FromConfig

auto sourceLanguageConfig = SourceLanguageConfig::FromLanguage("de-DE", "The Endpoint ID for your custom model.");
auto recognizer = SpeechRecognizer::FromConfig(speechConfig, sourceLanguageConfig, audioConfig);

备注

在 C++ 和 Java 中,SetSpeechRecognitionLanguageSetEndpointIdSpeechConfig 类中弃用的方法。 不建议使用这些方法。 请勿在创建 SpeechRecognizer 构造时使用。

在 Java 中指定源语言

在以下示例中,源语言是在创建新的 SpeechRecognizer 构造时显式提供的。

SpeechRecognizer recognizer = new SpeechRecognizer(speechConfig, "de-DE", audioConfig);

以下示例使用 SourceLanguageConfig 提供源语言。 然后,在创建新的 SpeechRecognizer 构造时,sourceLanguageConfig 会作为参数传递。

SourceLanguageConfig sourceLanguageConfig = SourceLanguageConfig.fromLanguage("de-DE");
SpeechRecognizer recognizer = new SpeechRecognizer(speechConfig, sourceLanguageConfig, audioConfig);

以下示例使用 SourceLanguageConfig 提供源语言和自定义终结点。 然后,在创建新的 SpeechRecognizer 构造时,sourceLanguageConfig 会作为参数传递。

SourceLanguageConfig sourceLanguageConfig = SourceLanguageConfig.fromLanguage("de-DE", "The Endpoint ID for your custom model.");
SpeechRecognizer recognizer = new SpeechRecognizer(speechConfig, sourceLanguageConfig, audioConfig);

备注

在 C++ 和 Java 中,setSpeechRecognitionLanguagesetEndpointIdSpeechConfig 类中弃用的方法。 不建议使用这些方法。 请勿在创建 SpeechRecognizer 构造时使用。

在 Python 中指定源语言

以下示例使用 SpeechRecognizer 构造以参数的形式显式提供源语言。

speech_recognizer = speechsdk.SpeechRecognizer(
        speech_config=speech_config, language="de-DE", audio_config=audio_config)

以下示例使用 SourceLanguageConfig 提供源语言。 然后,将 SourceLanguageConfig 作为参数传递给 SpeechRecognizer 构造。

source_language_config = speechsdk.languageconfig.SourceLanguageConfig("de-DE")
speech_recognizer = speechsdk.SpeechRecognizer(
        speech_config=speech_config, source_language_config=source_language_config, audio_config=audio_config)

以下示例使用 SourceLanguageConfig 提供源语言和自定义终结点。 然后,将 SourceLanguageConfig 作为参数传递给 SpeechRecognizer 构造。

source_language_config = speechsdk.languageconfig.SourceLanguageConfig("de-DE", "The Endpoint ID for your custom model.")
speech_recognizer = speechsdk.SpeechRecognizer(
        speech_config=speech_config, source_language_config=source_language_config, audio_config=audio_config)

备注

在 Python 中,SpeechConfig 类中的 speech_recognition_languageendpoint_id 属性已弃用。 不建议使用这些属性。 请勿在创建 SpeechRecognizer 构造时使用。

在 JavaScript 中指定源语言

第一步是创建 SpeechConfig 构造:

var speechConfig = sdk.SpeechConfig.fromSubscription("YourSubscriptionkey", "YourRegion");

接下来,使用 speechRecognitionLanguage 指定音频的源语言:

speechConfig.speechRecognitionLanguage = "de-DE";

如果使用自定义模型进行识别,则可使用 endpointId 指定终结点:

speechConfig.endpointId = "The Endpoint ID for your custom model.";

在 Objective-C 中指定源语言

以下示例使用 SPXSpeechRecognizer 构造以参数的形式显式提供源语言。

SPXSpeechRecognizer* speechRecognizer = \
    [[SPXSpeechRecognizer alloc] initWithSpeechConfiguration:speechConfig language:@"de-DE" audioConfiguration:audioConfig];

以下示例使用 SPXSourceLanguageConfiguration 提供源语言。 然后,将 SPXSourceLanguageConfiguration 作为参数传递给 SPXSpeechRecognizer 构造。

SPXSourceLanguageConfiguration* sourceLanguageConfig = [[SPXSourceLanguageConfiguration alloc]init:@"de-DE"];
SPXSpeechRecognizer* speechRecognizer = [[SPXSpeechRecognizer alloc] initWithSpeechConfiguration:speechConfig
                                                                     sourceLanguageConfiguration:sourceLanguageConfig
                                                                              audioConfiguration:audioConfig];

以下示例使用 SPXSourceLanguageConfiguration 提供源语言和自定义终结点。 然后,将 SPXSourceLanguageConfiguration 作为参数传递给 SPXSpeechRecognizer 构造。

SPXSourceLanguageConfiguration* sourceLanguageConfig = \
        [[SPXSourceLanguageConfiguration alloc]initWithLanguage:@"de-DE"
                                                     endpointId:@"The Endpoint ID for your custom model."];
SPXSpeechRecognizer* speechRecognizer = [[SPXSpeechRecognizer alloc] initWithSpeechConfiguration:speechConfig
                                                                     sourceLanguageConfiguration:sourceLanguageConfig
                                                                              audioConfiguration:audioConfig];

备注

在 Objective-C 中,SPXSpeechConfiguration 类中的 speechRecognitionLanguageendpointId 属性已弃用。 不建议使用这些属性。 请勿在创建 SPXSpeechRecognizer 构造时使用。

后续步骤