5

使用 WaveNet 语音时使用 ssml 时无法生成不同的音频波。

<prosody rate="slow" pitch="-2st">Can you hear me now?</prosody>
<prosody rate="medium" pitch="1st">Can you hear me now?</prosody>
<prosody rate="high" pitch="5st">Can you hear me now?</prosody>

使用强调标签会产生相同的结果。

我们正在使用来自 Google Cloud Text-to-Speech 的 Python API 来请求音频生成。

我想在每个样本中听到不同的声音强度。

请注意,我们也尝试对 " 进行缩放,但它对生成的音频没有影响。

https://issuetracker.google.com/issues/131618213

4

2 回答 2

0

使用TTS UI,您可以轻松测试不同的配置。

在此处输入图像描述

并且导出到 JSON,您还可以看到 API 调用需要如何。

在这种情况下:

Request URL
https://texttospeech.googleapis.com/v1beta1/text:synthesize
Request body
{
  "audioConfig": {
    "audioEncoding": "LINEAR16",
    "pitch": 0,
    "speakingRate": 1
  },
  "input": {
    "ssml": "<speak><prosody rate='70%'> The slings and arrows of outrageous fortune. Or to take arms against a sea of troubles And by opposing end them.</prosody> </speak>"
  },
  "voice": {
    "languageCode": "en-US",
    "name": "en-US-Wavenet-G"
  }
}

如果没有看到您在 API 调用中使用的完整代码,就很难看出您可能遇到的问题。

于 2021-12-26T21:24:57.730 回答
0

我不知道 Python sdk 是什么样子的,但我目前正在使用他们的 NodeJs sdk 进行 TTS。

看来,这些韵律属性(速率、音量、音高),而不是设置和传递您的 ssml 文本,应该直接在将发送到 Google TTS api 的请求对象中配置。

于 2020-08-24T19:10:21.940 回答