一、SSML简介
- 用途:SSML(语音合成标记语言)通过控制停顿、读音和读法来优化文本转语音输出。比如罕见姓氏TTS可能会播放错误的,可以进行指定;比如需要朗读地址,担心在楼号和门牌号上将12号楼103号读成“一二号楼”“一百零三号”这种,可以进行标记指定。
- 功能:可指定发音、插入停顿等,使语音更加自然流畅。
二、核心SSML标签及用法
1. <speak>
:SSML内容的根标签。
a. SSML的根元素,不论使用哪个ssml标签,都要有<speak></speak>
b. 用法示例:<speak>你好,世界!</speak>
c. 注意事项:
i. <speak></speak>
可以独立使用,不加其他任何标签,此时的没有任何特殊合成效果
ii. <speak></speak>
在每次合成请求中,只能有且只有一次出现
iii. <speak></speak>
一定在需要合成的所有文本(及标点)的最外面
2. <phoneme>
:指定字词发音。
a. 属性:
b. 示例:
<speak><phoneme alphabet="py" ph="xi1 xi1">茜茜</phoneme>公主是奥地利拍摄的历史题材的德语三部曲电影。</speak>
3. <break>
:插入停顿。
a. 属性:
b. 示例:
i. <speak>今天<break strength="x-strong"/>天气很好</speak>
ii. <speak>今天天气<break time="2.5s"></break>很好</speak>
4. <say-as>
:根据「信息类型」指定读法
a. 语法说明:<say-as interpret-as="string">text</say-as>
b. score 冒号按照「比例/比分」播报
c. time 冒号按照「时间」播报
d. digits 数字按照「单个数字」播报
e. number 数字按照「整体数字」播报
f. telephone 数字按照「电话」播报
g. address 文本按照「地址」播报
三、系统内使用方法
1. 对离线生成的企业语音进行标记
a. 仅支持智能音色,在企业语音智能音色处切换成SSML进行使用
b. 在输入框中输入标记语言的代码点击播放生成
2. 实时TTS生成的语音进行标记
a. 播放类型选择智能TTS,切换成SSML进行使用
b. 在输入框中输入标记语言的代码保存即可生效
c. 如果标记语言的代码是通过一个变量存储的,在此处按标记语言进行播放,只需要将对应的变量维护在此处,格式:${xxxx}
i. 注意:变量值需保证只有一个根标签,一条播放类型数据只有一个变量。即通过变量取到的值是完整的代码