Amazon Polly
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

语音速度

由于语音之间的自然差异,每个可用的语音将以略微不同的速度朗读文本。例如,对于美国英语语音,在说“Mary had a little lamb”时,Ivy 和 Joanna 的语速比 Matthew 的语速略快一点。 他们朗读同一文本的速度比 Joey 快得多。

由于语音之间有很大的差异,而且这种差异的程度取决于所朗读的文本,因此,任何标准语速(每分钟单词数)均不适用于 Amazon Polly 语音。不过,您可以使用 SpeechMarks 来查明用您的语音朗读选定文本需要多长时间。有关在 Amazon Polly 中使用 SpeechMarks 的更多信息,请参阅使用语音标记

看看朗读一段文本大概需要多长时间

  1. 打开 AWS CLI。

  2. 运行以下代码(根据需要填充)

    aws polly synthesize-speech \ --output-format json \ --voice-id [name of desired voice] \ --text '[desired text]' \ --speech-mark-types='["viseme"]' \ LengthOfText.txt
  3. 打开 LengthOfText.txt

如果文本为“Mary had a little lamb”,则 Amazon Polly 返回的最后几行将为:

{"time":882,"type":"viseme","value":"t"} {"time":964,"type":"viseme","value":"a"} {"time":1082,"type":"viseme","value":"p"}

最后一个 viseme(本质上是“lamb”的最后几个字母的读音)在语音开始后 1082 毫秒开始。虽然这不是音频的准确长度,但是很接近。您可以使用 1082 毫秒作为语音之间的语音速率比较的基础。

更改您的语音速度

对于某些应用程序,您可能会发现,您更希望放慢或加快您喜欢的语音。如果需要考虑语音速度,Amazon Polly 会提供使用 SSML 标签进行修改的能力。

例如:

您的组织正在创建一个为移民受众朗读书籍的应用程序。这些受众会说英语,但其流利程度有限。在这种情况下,您可以考虑放慢语音速度,以便在应用程序进行朗读时为您的受众提供多一点的理解时间。

Amazon Polly 可使用 SSML <prosody> 标签来帮助您放慢语音速度,与以下情况下类似:

<speak> In some cases, it might help your audience to <prosody rate="85%">slow the speaking rate slightly to aid in comprehension.</prosody> <speak

<speak> In some cases, it might help your audience to <prosody rate="85%">slow the speaking rate slightly to aid in comprehension.</prosody> <speak

在将 SSML 与 Amazon Polly 结合使用时,您可使用两个速度选项:

  • 预设速度:x-slowslowmediumfastx-fast。在这些情况下,每个选项的速度都是近似的,具体取决于您的首选语音。medium 选项是正常的语音速度。

  • 语音速度的 n%:可使用介于 20% 和 200% 之间的任何语音速度的百分比。在这些情况下,您可以选择自己所需的速度。不过,实际的语音速度都是近似的,具体取决于您选定的语音。100% 被视为正常的语音速度。

由于每个选项的速度都是近似值,并且取决于所选语音,因此,我们建议您以各种速度测试所选语音,以查看完全符合您需求的内容。

有关使用 prosody 标签以获得最佳效果的更多信息,请参阅 控制音量、语速和音高

本页内容: