神经 TTS - Amazon Polly
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

神经 TTS

Amazon Polly神经 TTS (NTTS)系统,可以生成比标准语音更高质量的声音。NTTTS 系统可以生成最自然的和人类的样子 text-to-speech 声音是可能的。

标准 TTS 语音使用拼接合成。此方法将记录的语音音素串联在一起(拼接),生成发音非常自然的合成语音。然而,语音中不可避免的语调变化和用于分割波形的技术限制了语音的质量。

Amazon Polly 神经 TTS 系统不使用标准的拼接合成方法来生成语音。它具有两个部分:

  • 一种神经网络,将一系列音素(最基本的语言单位)转换为一系列声谱图,这些声谱图是不同频带能量水平的快照

  • 一种声码器,可将声谱图转换为连续的音频信号。

神经 TTS 系统的第一个组成部分是 sequence-to-sequence模型。该模型不仅仅从相应的输入创建其结果,而且还考虑输入元素的序列如何配合使用。该模型选择它输出的声谱图,使其频带强调人脑在处理语音时使用的声学特征。

然后该模型的输出传递给神经声码器。声码器会将声谱图转换为语音波形。当训练用于构建通用级拼接合成系统的大型数据集时, sequence-to-sequence 方法将产生更高质量、听起来更自然的声音。

The Aria(新西兰英语)、Arlet(加泰罗尼亚语)、Arthur(英式英语)、Ayanda(南非英语)、丹尼尔(德语)、加布里埃尔(加拿大法语)、汉娜(奥地利德语)、Kajal(印地语和印度英语)、凯文(美式英语)、利亚姆(加拿大法语)、奥利维亚(澳大利亚英语)和佩德罗(美国西班牙语)在使用 NTTS 时,仅Amazon Polly 支持语音。所有其他声部都有使用标准 TTS 方法创建的对应声部。在使用仅限 NTTS 的语音时,TTS 引擎参数必须设置为neural,无论使用控制台还是 API 都是如此。

功能和区域兼容性

神经语音并非全部可用Amazon区域,该区域也并非支持所有 Amazon Polly 功能。

以下区域支持神经语音:

  • 美国东部(弗吉尼亚北部):us-east-1

  • 美国西部(俄勒冈):us-west-2

  • 非洲(开普敦)

  • 亚太地区(东京):ap-nth-1

  • 亚太地区(首尔):ap-nth-2

  • 亚太地区(新加坡):ap--south-1

  • 亚太地区(悉尼):ap-southeast-2

  • 加拿大(中部):central-1

  • 欧洲(法兰克福)

  • 欧洲(爱尔兰):eu-west-1

  • 欧洲(伦敦):e-wst-2

  • Amazon GovCloud (美国西部) us-gov-west–1

这些区域的终端节点和协议与标准语音所用的相同。有关更多信息,请参阅 。Amazon Polly 终端节点和配额.

神经语音支持以下功能:

  • 实时和异步语音合成操作。

  • 播音员风格。有关说话方式的更多信息,请参阅NTTS 播音员说话风格.

  • 所有语音标记。

  • Amazon Polly 支持的许多(但不是所有)SSML 标签。有关 NTTS 支持的 SSML 标签的更多信息,请参阅支持的 SSML 标签.

与标准语音一样,您可以从各种采样率中进行选择,以优化应用程序的带宽和音频质量。标准和神经语音的有效采样率为 8 kHz、16 kHz、22 kHz 或 24 kHz。标准语音的默认值为 22 kHz。神经语音的默认值为 24 kHz。Amazon Polly 支持 MP3、OGG (Vorbis) 和原始 PCM 音频流格式。

语音引擎

Amazon Polly 使您可以使用神经或标准语音engine财产。它有两个可能的值:标准要么神经系统,表示是要使用标准语音还是神经语音。Standard 是默认值。

重要

如果您未位于支持 NTTS 的区域之一,则仅标准语音引擎将显示在控制台中。如果未显示神经引擎,请检查您的区域。有关可在其中使用 NTTS 的区域的更多信息,请参阅功能和区域兼容性

在使用仅限 NTTS 的语音时,TTS 引擎参数必须设置为neural,无论是使用控制台还是 API。

选择语音引擎(控制台)

要选择语音引擎(控制台)

  1. 从打开 Amazon Polly 控制台https://console.aws.amazon.com/polly/.

  2. 在文本到语音转换页面上,对于 Engine (引擎),选择 Standard (标准)Neural (神经)

    
                            这些区域有:Engine控制台上的选项语音到文本转换页. 请注意,神经系统选项仅显示在支持神经引擎的区域中。

    如果选择 Neural (神经),则只有神经语音可用,纯标准语音将被禁用。

选择语音引擎 (CLI)

要选择语音引擎 (CLI)

engine 参数是可选的,有两个可能的值:standardNeural。在创建 SynthesisSynthesisTask 操作时使用该属性。

例如,您可以使用以下代码来运行start-speech-synthesis-task Amazon CLI美国西部 2(俄勒冈)区域的指挥部

以下 Amazon CLI 示例针对 Linux、Unix 和 macOS 编排了格式。对于 Windows,请将每行末尾的反斜杠 (\) Unix 行继续符替换为脱字号 (^)

aws polly start-speech-synthesis-task \ --engine neural --region us-west-2 \ --endpoint-url "https://polly.us-west-1.amazonaws.com/" \ --output-format mp3 \ --output-s3-bucket-name your-bucket-name \ --output-s3-key-prefix optional/prefix/path/file \ --voice-id Joanna \ --text file://text_file.txt

这将生成与以下内容类似的响应:

"SynthesisTask": { "CreationTime": [..], "Engine": "neural", "OutputFormat": "mp3", "OutputUri": "https://s3.us-west-1.amazonaws.com/your-bucket-name/optional/prefix/path/file.<task_id>.mp3", "TextType": "text", "RequestCharacters": [..], "TaskStatus": "scheduled", "TaskId": [task_id], "VoiceId": "Joanna" }