你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

什么是高清声音? (预览版)

注意

此功能目前处于公开预览状态。 此预览版未提供服务级别协议,不建议将其用于生产工作负载。 某些功能可能不受支持或者受限。 有关详细信息,请参阅 Microsoft Azure 预览版补充使用条款

Azure AI 语音在文本转语音技术领域继续取得进展,推出了神经网络文本转语音高清 (HD) 声音。 HD 语音可以理解内容,自动检测输入文本中的情绪,并实时调整说话语调,使之与情绪匹配。 HD 语音保持与其神经网络语音(和非高清语音)一致的声音特征,甚至会通过增强的功能提供更多价值。

神经网络文本转语音 HD 声音的主要功能

以下是 Azure AI 语音 HD 声音的主要功能:

关键功能 说明
类人类语音生成 神经网络文本转语音 HD 声音可以生成高度自然和类似于人类的语音。 该模型基于数百万小时的多语言数据进行训练,使模型能够准确解释输入文本,并使用适当的情感、速度和节奏生成语音,无需手动调整。
对话 神经网络文本转语音 HD 声音可以复制自然语音模式,包括自发暂停和强调。 给定对话文本时,模型可以重现常见的音素,如停顿和填充词。 生成的声音听起来像是有人直接与你交谈。
韵律变化 神经网络文本转语音 HD 声音在每个输出中引入了轻微的变化,以增强真实感。 这些变化使语音听起来更自然,因为人类的声音会自然地表现出变化。
高保真度 神经网络文本转语音 HD 声音的主要目标是生成高保真音频。 我们系统生成的合成语音可以紧密模仿人类语音的质量和自然性。
版本控制 对于神经网络文本转语音 HD 声音,我们发布了相同声音的不同版本,每个版本都有独特的基础模型大小和配方。 这样,你就有机会体验新的声音变体,或者继续使用特定版本的声音。

Azure AI 语音 HD 声音与其他 Azure 文本转语音声音的比较

Azure AI 语音 HD 声音与其他 Azure 文本转语音声音相比如何? 它们在特性和功能方面有何不同?

下面是 Azure AI 语音 HD 声音、Azure OpenAI HD 声音和 Azure AI 语音声音之间的功能比较:

功能 Azure AI 语音 HD 声音 Azure OpenAI HD 声音 Azure AI 语音声音(非 HD)
区域 美国东部、东南亚、西欧 美国中北部、瑞典中部 在数十个区域中可用。 请参阅区域列表
声音数 12 6 超过 500
多语言 否(仅对主要语言执行) 是(仅适用于多语言声音)
SSML 支持 一部分 SSML 元素的支持。 一部分 SSML 元素的支持。 对 Azure AI 语音中全套 SSML 的支持。
开发选项 语音 SDK、语音 CLI、REST API 语音 SDK、语音 CLI、REST API 语音 SDK、语音 CLI、REST API
部署选项 仅限云 仅限云 云、嵌入式、混合和容器。
实时或批量合成 仅实时 实时和批量合成 实时和批量合成
延迟 小于 300 毫秒 大于 500 毫秒 小于 300 毫秒
合成音频的采样率 8、16、24 和 48 kHz 8、16、24 和 48 kHz 8、16、24 和 48 kHz
语音输出音频格式 opus、mp3、pcm、truesilk opus、mp3、pcm、truesilk opus、mp3、pcm、truesilk

支持的 Azure AI 语音 HD 声音

Azure AI 语音 HD 声音值采用 voicename:basemodel:version 格式。 冒号前的名称(例如 en-US-Ava)是声音角色名称和其原始区域设置。 基础模型会在后续更新中按版本跟踪。

目前,DragonHD 是 Azure AI 语音 HD 声音的唯一基础模型。 若要确保你使用的是我们提供的最新版本的基础模型,而无需进行代码更改,请使用 LatestNeural 版本。

例如,对于角色 en-US-Ava,可以指定以下 HD 声音值:

  • en-US-Ava:DragonHDLatestNeural:始终使用我们稍后提供的基础模型的最新版本。

下表列出了当前可用的 Azure AI 语音 HD 声音。

神经网络声音角色 HD 声音
de-DE-Seraphina de-DE-Seraphina:DragonHDLatestNeural
en-US-Andrew en-US-Andrew:DragonHDLatestNeural
en-US-Andrew2 en-US-Andrew2:DragonHDLatestNeural
en-US-Aria en-US-Aria:DragonHDLatestNeural
en-US-Ava en-US-Ava:DragonHDLatestNeural
en-US-Brian en-US-Brian:DragonHDLatestNeural
en-US-Davis en-US-Davis:DragonHDLatestNeural
en-US-Emma en-US-Emma:DragonHDLatestNeural
en-US-Emma2 en-US-Emma2:DragonHDLatestNeural
en-US-Jenny en-US-Jenny:DragonHDLatestNeural
en-US-Steffan en-US-Steffan:DragonHDLatestNeural
ja-JP-Masaru ja-JP-Masaru:DragonHDLatestNeural
zh-CN-Xiaochen zh-CN-Xiaochen:DragonHDLatestNeural

如何使用 Azure AI 语音 HD 声音

可以通过与非 HD 声音相同的语音 SDK 和 REST API 使用 HD 声音。

下面是使用 Azure AI 语音 HD 声音时要考虑的一些要点:

  • 声音区域设置:声音名称中的区域设置指示其原始语言和区域。
  • 基础模型
    • HD 声音附带一个基础模型,该模型可理解输入文本并相应地预测说话模式。 可以根据每个声音的可用性指定所需的模型(如 DragonHDLatestNeural)。
  • SSML 用法:若要在 SSML 中引用声音,请使用格式 voicename:basemodel:version。 冒号前的名称(例如 de-DE-Seraphina)是声音角色名称和其原始区域设置。 基础模型会在后续更新中按版本跟踪。
  • 温度参数
    • 温度值为 0 到 1 的浮点,影响输出的随机性。 还可以调整温度参数来控制输出的变化。 更低的随机性会产生更稳定的结果,而更高的随机性会提供多样性而减少一致性。
    • 温度较低会导致随机性较低,从而导致更可预测的输出。 温度较高会增加随机性,从而带来更多样化的输出。 默认温度设置为 1.0。

下面是如何在 SSML 中使用 Azure AI 语音 HD 声音的示例:

<speak version='1.0' xmlns='http://www.w3.org/2001/10/synthesis' xmlns:mstts='https://www.w3.org/2001/mstts' xml:lang='en-US'>
<voice name='en-US-Ava:DragonHDLatestNeural' parameters='temperature=0.8'>Here is a test</voice>
</speak>

Azure AI 语音 HD 声音支持和不支持的 SSML 元素

包含输入文本的语音合成标记语言 (SSML) 确定了文本转语音输出的结构、内容和其他特征。 例如,可以使用 SSML 来定义段落、句子、中断/暂停或静音。 可以使用事件标记(例如书签或视素)包装文本,由应用程序稍后处理。

Azure AI 语音 HD 声音不完全支持其他 Azure AI 语音声音支持的 SSML 元素或事件。 特别需要注意的是,Azure AI 语音 HD 声音不支持字边界事件

有关 Azure AI 语音 HD 声音支持和不支持的 SSML 元素的详细信息,请参阅下表。 有关如何使用 SSML 元素的说明,请参阅语音合成标记语言 (SSML) 文档

SSML 元素 说明 Azure AI 语音 HD 声音支持
<voice> 指定声音和可选效果(eq_careq_telecomhp8k)。
<mstts:express-as> 指定讲话风格和角色。
<mstts:ttsembedding> 指定个人声音的 speakerProfileId 属性。
<lang xml:lang> 指定讲话语言。
<prosody> 调整音节、调型、范围、语速和音量。
<emphasis> 添加或删除文本的单词级强调。
<audio> 将预先录制的音频嵌入 SSML 文档中。
<mstts:audioduration> 指定输出音频的持续时间。
<mstts:backgroundaudio> 将后台音频添加到 SSML 文档,或者使用文本转语音来混合音频文件。
<phoneme> 指定 SSML 文档中的发音。
<lexicon> 定义如何在 SSML 中读取多个实体。 是(仅支持别名)
<say-as> 指示元素的文本的内容类型,例如数字或日期。
<sub> 指示应读出别名属性的文本值,而不是元素中包含的文本。
<math> 使用 MathML 作为输入文本,以便在输出音频中正确读出数学符号。
<bookmark> 获取音频流中每个标记的偏移量。
<break> 替代字词之间的默认中断或暂停行为。
<mstts:silence> 在文本前后或在两个相邻句子之间插入停顿。
<mstts:viseme> 定义一个人说话时面部和嘴巴的位置。
<p> 表示 SSML 文档中的段落。
<s> 表示 SSML 文档中的句子。

注意

尽管本指南前面的部分也将 Azure AI 语音 HD 声音与 Azure OpenAI HD 声音进行了比较,但 Azure AI 语音支持的 SSML 元素不适用于 Azure OpenAI 声音。