在Google Cloud Speech to Text API v1p1beta1 RPC中使用AlternativeLanguageCodes

时间:2019-05-27 12:16:40

标签: go google-api speech-recognition

我正在使用go客户端在RPC v1p1beta1中使用Google Cloud Speech to Text API。该API可以正常工作,但是如果在RecognitionConfig中设置了AlternativeLanguageCodes,它将无法响应。

GoogleRecognitionConfig: &speech.StreamingRecognitionConfig{
            SingleUtterance: c.SingleUtterance,
            InterimResults:  false,
            Config: &speech.RecognitionConfig{
                Encoding:        speech.RecognitionConfig_LINEAR16,
                SampleRateHertz: 8000,
                LanguageCode:    lang,
                // AlternativeLanguageCodes: []string("en-US"),
                SpeechContexts: []*speech.SpeechContext{
                    {Phrases: c.Phrases},
                },
            },
        },

我知道它是beta版本,但我想知道是否还有其他人也遇到了问题,或者这仅仅是我代码中的错误。

谢谢

1 个答案:

答案 0 :(得分:0)

我今天已经尝试过此操作(c#,1.0.0-beta02),但我从未得到替代语言代码的结果,仅针对主要语言代码。

ENGINE = SpeechClient.Create();
ENGINE_CONFIG = new StreamingRecognitionConfig()
{
    Config = new RecognitionConfig()
    {
        Encoding = RecognitionConfig.Types.AudioEncoding.Linear16,
        SampleRateHertz = settings.ArchiveSampleRate,
        LanguageCode = firstLanguageCode,
        ProfanityFilter = false,
        MaxAlternatives = Constants.MASTER_SETTINGS.SpeechRecognitionAlternatives,
        SpeechContexts = { new HintsManager(settings).GetHintsBasedOnContext(Contexts) }
    },
    InterimResults = Constants.MASTER_SETTINGS.RecognitionConfigSettings.InterimResultsReturned
};

// NOTE: 10062019 - ADD ALTERNATIVE LANGUAGE CODES HERE
// NOTE: 10062019 - ADD ALTERNATIVE LANGUAGE CODES HERE
// NOTE: 10062019 - ADD ALTERNATIVE LANGUAGE CODES HERE
foreach (var alternativeCode in otherAlternativeLanguageCodes)
{
    ENGINE_CONFIG.Config.AlternativeLanguageCodes.Add(alternativeCode);
}

编辑:昨天升级到新的Beta后,Nuget:

Install-Package Google.Cloud.Speech.V1P1Beta1 -Version 1.0.0-beta03

一切似乎都正常。我唯一注意到的是临时结果永远不会返回?