【问题标题】:Google Text-To-Speech latencyGoogle 文字转语音延迟
【发布时间】:2019-02-18 16:59:28
【问题描述】:

我正在创建一个涉及 Google Text-To-Speech 服务的实时语音应用程序。但是,我的延迟在 600-1100 毫秒之间,这对于我的应用程序来说太慢了。音频只有大约 3 秒长,我该如何改善呢? (延迟是衡量我发送请求然后接收音频所需的时间)。

更新

我使用的代码是:

//I call this at the start of my program
TTSclient = TextToSpeechClient.Create();

//This is the method that I call everytime I make a TTS call in my program
public static Google.Protobuf.ByteString MakeTTS(string text)
    {
        SynthesisInput input = new SynthesisInput
        {
            Text = text
        };
        VoiceSelectionParams voice = new VoiceSelectionParams
        {
            LanguageCode = "en-AU",
            Name = "en-AU-Wavenet-A"
        };
        AudioConfig config = new AudioConfig
        {
            AudioEncoding = AudioEncoding.Linear16,
            SampleRateHertz = 16000,
            SpeakingRate = 0.9
        };
        var TTSresponse = TTSclient.SynthesizeSpeech(new SynthesizeSpeechRequest
        {
            Input = input,
            Voice = voice,
            AudioConfig = config
        });
        return TTSresponse.AudioContent;
    }

谢谢

【问题讨论】:

    标签: c# google-cloud-platform latency voice google-text-to-speech


    【解决方案1】:

    我建议首先通过metrics page of the TTS API 中的 API 方法检查延迟中位数。如果您在那里看到延迟在 600 到 1,100 毫秒之间,那么我看不到有太多事情要做,因为所有请求都是同步完成的,而且由于这是共享资源,这些 API 的 SLA 仅涵盖可用性,而不是延迟。

    如果您获得的结果要低得多,那么我只能想到两件事可能会减慢您的结果:网络自身的延迟或正在进行的任何其他处理。如果最新情况是这样,那么您将不得不尝试为您的请求错误设置不同的设置(例如,我想知道是否指定设备配置文件,因为此功能目前处于测试阶段,可能会导致响应稍慢) .

    【讨论】:

    • 您好内里,感谢您的回复。根据 TTS 指标页面上的延迟中位数,延迟仅为 200 毫秒,这比我所经历的要快得多。如果您有很多使用 C# 的经验,您介意看看我更新的帖子以及我正在使用的代码吗?谢谢
    • 代码看起来很简单。我看到您使用的是 Wavenet 而不是标准语音类型,但由于显示的中值延迟很低,所以我认为这不是问题。我可以建议直接尝试使用 REST 请求和任何其他客户端库(Java 或 Python)。如果没有任何帮助,则问题似乎与网络延迟有关。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-29
    相关资源
    最近更新 更多