全部产品
云市场
云游戏

SSML标记语言介绍

更新时间:2020-09-14 10:23:56

本文为您介绍SSML(Speech Synthesis Markup Language)标记语言的功能、标签使用及示例。

概述

SSML是一种基于XML的标记语言。 与纯文本的合成相比,使用SSML可以充实合成的内容,为最终合成效果带来更多变化。SSML不仅让人控制语音合成能读什么,更让人可以控制语音合成可以怎么读,包括控制断句分词方式、发音、速度、停顿、声调和音量等特征,甚至加入背景音乐。

说明

阿里巴巴语音合成服务的SSML实现基于W3C的语音合成标记语言版本1.0。但并不支持所有的W3C包含的标记类型,而是从业务角度出发,将支持的标记类型最大程度与业务需求绑定。

使用方式

说明

  • 目前只有中文合成支持SSML功能。

  • 所有文本需放在<speak></speak>标签之内,且每个语音合成任务只能包含一个<speak></speak>标签。

将带标签的文本作为text参数值,上传至语音合成服务,以Java SDK为例:

SpeechSynthesizer synthesizer = new SpeechSynthesizer(client, getSynthesizerListener());
String text = "<speak>请闭上眼睛休息一下<break time=\"500ms\"/>好了,请睁开眼睛。</speak>";
synthesizer.setText(text);

发送给语音合成服务的请求内容如下:

{
    "payload": {
        "volume": 50,
        "sample_rate": 16000,
        "format": "wav",
        "text": "<speak>请闭上眼睛休息一下<break time=\"500ms\"/>好了,请睁开眼睛。</speak>"
    },
    "context": {
        "sdk": {
            "name": "nls-sdk-java",
            "version": "2.0.4"
        }
    },
    "header": {
        "namespace": "SpeechSynthesizer",
        "name": "StartSynthesis",
        "message_id": "5fdf78c0dd574b6897f3cb204dd080b3",
        "appkey": "fd4******er4",
        "task_id": "6e1be78ef5804c50a2c5a8b92de1****"
   

标签

<speak>

  • 描述

    <speak>标签是所有待支持SSML标签的根节点。一切需要调用SSML标签的文本都要包含在<speak></speak>中。

  • 语法

     <speak>需要调用SSML标签的文本</speak>
  • 属性

    <speak>标签支持如下属性。

    属性名称

    属性类型

    属性值

    是否必选

    描述

    voice

    String

    线上可调用的发音人的名称代号,为全小写的voice参数值,如”siyue”。

    阿里巴巴语音合成特有标签。在合成时,指定发音人,优先级高于接口请求参数voice指定的发音人。

    注意

    “xiaoyue”暂不支持在voice中设置。

    encodeType

    String

    PCM/WAV/MP3

    阿里巴巴语音合成特有标签。在合成时,指定音频文件格式,优先级高于接口请求参数format指定的文件格式。

    sampleRate

    String

    8000/16000

    阿里巴巴语音合成特有标签。在合成时,指定音频的采样率,优先级高于接口请求参数sample_rate指定的音频采样率。

    rate

    String

    [-500,500]之间整数。默认值为0。

    • 大于0表示加快语速。

    • 小于0表示减慢语速。

    阿里巴巴语音合成特有标签。在合成时,指定音频的语速,优先级高于接口请求参数speech_rate指定的语速。

    pitch

    String

    [-500,500]之间整数。默认值为0。

    • 大于0表示升高音高。

    • 小于0表示降低音高。

    阿里巴巴语音合成特有标签。在合成时,指定音频的音高,优先级高于接口请求参数pitch_rate指定的音高。

    volume

    String

    [0,100]之间整数。默认值为50。

    • 大于50表示增大音量。

    • 小于50表示减小音量。

    阿里巴巴语音合成特有标签。在合成时,指定音频的音量,优先级高于接口请求参数volume指定的音量。

    effect

    String

    robot/lolita/lowpass/echo/eq/lpfilter/hpfilter

    阿里巴巴语音合成特有标签。使用该标签可以使合成的语音产生不同的声音效果。

    • robot:机器人音效。

    • lolita:萝莉音效。

    • lowpass:低通音效。

    • echo:回声音效。

    • eq:均衡器。

    • lpfilter:低通滤波器。

    • hpfilter:高通滤波器。

    说明

    • 其中eq、lpfilter、hpfilter是高级效果器,您可以通过effectValue自定义效果器的效果。

    • 一个SSML只支持一种音效,不可以写多个effect属性。

    • 选择使用音效功能会增加系统延时。

    effectValue

    String

    当effect取值为eq/lpfilter/hpfilter时,使用该参数修改效果器的默认效果。

    • eq(均衡器):系统默认使用8个等级。对应的频率为[“40Hz”,“100Hz”, “200Hz”, “400Hz”, “800Hz”, “1600Hz”, “4000Hz”, “12000Hz”];对应的带宽为[“1.0q”, “1.0q”, “1.0q”, “1.0q”, “1.0q”, “1.0q”, “1.0q”, “1.0q”]。在使用过程中,需要输入8个等级对应的增益,其取值范围为[-20dB, 20dB]。例如,effectValue=”1 1 1 1 1 1 1 1”。是一个以空格分割的8个整数组成的字符串。数值为0表示不调整对应频率的gain。

    • lpfilter:输入低通滤波器的频率值。取值为(0, 目标采样率/2]之间的整数。例如effectValue=”800”。

    • hpfilter:输入高通滤波器的频率值。取值为(0, 目标采样率/2]之间的整数。例如effectValue=“1200”。

    bgm

    String

    线上可调用的背景音乐的名称。参见bgm属性说明。

    阿里巴巴语音合成特有标签。为合成的语音添加指定的背景音乐。

    backgroundMusicVolume

    String

    [0,100]之间的整数。默认值为50。

    • 大于50表示增大音量。

    • 小于50表示减小音量。

    阿里巴巴语音合成特有标签。控制背景音乐的音量。

    其中,bgm属性说明如下。

    服务内嵌URL

    自定义背景音URL

    目前阿里巴巴语音合成服务内嵌如下几款背景音乐供您体验:

    您可以根据需求,使用自定义的背景音。需要将背景音存放在阿里云的OSS上,并且所在的存储空间至少为公共读权限,请参见创建存储空间。使用HTTP/HTTPS协议生成文件访问链接,请参见管理Object章节中生成文件URL

    音频要求:

    • 采样率16 KHz、单声道WAV格式。

    • 不超过2 MB。

    说明

    • 合成时长超出背景音时长时,背景音将随合成音频循环播放(如果背景音不是WAV格式,可使用ffmpeg将其转为WAV格式:ffmpeg -i 输入音频 -acodec pcm_s16le -ac 1 -ar 16000 目标.wav)。

    • 标签内的URL如果包含XML的特殊字符,需要做字符转义。常用的共有5个:<、>、&、"和'

    注意

    您需要对上传的音频版权承担相应的法律责任。

  • 标签关系

    <speak>标签可以包含文本和以下标签:

    • <break>

    • <s>

    • <w>

    • <phoneme>

    • <say-as>

    • 示例

      • 空属性

        <speak>
          需要调用SSML标签的文本
        </speak>

        音频效果:SSML-speak1.mp3

      • voice属性

        <speak voice="xiaogang">
          我是男声。
        </speak>

        音频效果:SSML-speak2.mp3

      • encodeType属性

        <speak encodeType="mp3">
          我可以生成压缩格式的音频。
        </speak>

        音频效果:SSML-encode.mp3

      • sampleRate属性

        <speak sampleRate="8000">
          看看我的文件大小吧,是16000采样率音频的一半。
        </speak>

        音频效果:SSML-speak4.mp3

      • rate属性

        <speak rate="200">
          我的语速比正常人快。
        </speak>

        音频效果:SSML-speak5.mp3

      • pitch属性

        <speak pitch="-100">
          我的音高却比别人低。
        </speak>

        音频效果:SSML-speak6.mp3

      • volume属性

        <speak volume="80">
          我的音量也很大。
        </speak>

        音频效果:SSML-speak7.mp3

      • 属性组合(空格分隔)

        <speak rate="200" pitch="-100" volume="80">
          所以放在一起,我的声音是这样的。
        </speak>

        音频效果:SSML-speak8.mp3

      • effect属性

        <speak effect="robot">
          你喜欢机器人瓦力吗?
        </speak>

        音频效果:SSML-speak9.mp3

      • bgm属性

        <speak bgm="http://nls.alicdn.com/bgm/2.wav" backgroundMusicVolume="30" rate="-500" volume="40">
          <break time="2s"/>
          阴崖老木苍苍烟
          <break time="700ms"/>
          雨声犹在竹林间
          <break time="700ms"/>
          绵蕝固知裨国计
          <break time="700ms"/>
          绵州风物总堪怜
          <break time="2s"/>
        </speak>

        音频效果:SSML-speak10.mp3

    <break>

    • 描述

      用于在文本中插入停顿,该标签是可选标签。

    • 语法

       # 空属性
       <break/>
       # 带time属性
       <break time="string"/>
    • 属性

      说明

      使用无属性的<break>标签时,停顿时长为“1s”。

      属性名称

      属性类型

      属性值

      是否必选

      描述

      time

      String

      [number]s/[number]ms

      以秒/毫秒为单位设置停顿的时长 (如“2s“、“50ms”)。

      • [number]s:以秒为单位,[number]取值范围为[50, 10000]的整数。

      • [number]ms:以毫秒为单位,[number]取值范围为[1, 10]的整数。

    • 标签关系

      <break>是空标签,不能包含任何标签。如果SSML结构中存在<s>标签,请把<break>写在<s>里面,表示对当前段落或句子设置停顿。

    • 示例

       <speak>
         请闭上眼睛休息一下<break time="500ms"/>好了,请睁开眼睛。
       </speak>

      音频效果:SSML-break.mp3

    <s>

    • 描述

      用于表示文本的句子结构,该标签是可选标签。

    • 语法

       <s>文本</s>
    • 属性

      无。

    • 标签关系

      <s>标签可以包含文本和以下标签:

      • <break>

      • <w>

      • <phoneme>

      • <say-as>

    • 示例

      <speak><s>这是第一句话</s><s>这是第二句话</s></speak>

      音频效果:SSML-s.mp3

    <sub>

    • 描述

      使用别名替换标签内文本。

    • 语法

       <sub alias="string"></sub>
    • 属性

      属性名称

      属性类型

      属性值

      是否必选

      描述

      alias

      String

      替换后的内容

      用于替换标签内的文本。

    • 标签关系

      <sub>标签仅包括文本。

    • 示例

       <speak><sub alias="网络协议标准">W3C</sub></speak>

      音频效果:SSML-sub.mp3

    <w>

    • 描述

      用于表示文本的词语结构,该标签是可选标签。

    • 语法

       <w>文本</w>
    • 属性

      无。

    • 标签关系

      <w>标签仅包括文本。

    • 示例

       <speak>南京市长<w>江大桥</w>今天发表了演讲。</speak>

      音频效果:SSML-w.mp3

    <phoneme>

    • 描述

      用于控制标签内文本的读音,该标签是可选标签。

    • 语法

       <phoneme alphabet="string" ph="string">文本</phoneme>
    • 属性

      属性名称

      属性类型

      属性值

      是否必选

      描述

      alphabet

      String

      py

      “py”表示拼音。

      ph

      String

      标签内文本对应的拼音串

      拼音用法的赋值规范:

      • 字与字的拼音用空格分隔,拼音的数目必须与字数相等。

      • 每个拼音由发音和音调组成,音调为1~5的数字编号,其中”5”表示轻声。

    • 标签关系

      <phoneme>标签仅包括文本。

    • 示例

       <speak>
          去<phoneme alphabet="py" ph="dian3 dang4 hang2">典当行</phoneme>把这个玩意<phoneme alphabet="py" ph="dang4 diao4">当掉</phoneme>
       </speak>

      音频效果:SSML-phoneme.mp3

    <soundEvent>

    • 描述

      提示音标签,可以在SSML合成过程中,通过该标签在任意位置插入提示音。

    • 语法

       <soundEvent src="URL"/>
    • 属性

      属性名称

      属性类型

      属性值

      是否必选

      描述

      src

      String

      URL提示音资源路径

      您可以根据需求,使用自定义提示音。需要将提示音存放在阿里云OSS上,并且所在的存储空间至少为公共读权限,请参见创建存储空间,使用HTTP/HTTPS协议生成文件访问链接请参见管理Object章节中生成文件URL

      音频要求:

      • 采样率16KHz、单声道WAV格式。

      • 不超过2MB。

      注意

      您需要对上传的音频版权承担相应的法律责任。

    • 标签关系

      <soundEvent>是空标签,不可以包含任何标签。

    • 示例

       <speak>
         一匹马受了惊吓<soundEvent src="http://nls.alicdn.com/sound-event/horse-neigh.wav"/>人们四散躲避
       </speak>

      音频效果:SSML-sound-event.mp3

    <say-as>

    • 描述

      用于指示出标签内文本的信息类型,进而按照该类型的默认发音方式发音。

    • 语法

       <say-as interpret-as="string">文本</say-as>
    • 属性

      属性名称

      属性类型

      属性值

      是否必选

      描述

      interpret-as

      String

      cardinal/digits/telephone/name/address/id/characters/punctuation/date/time/currency/measure

      指示出标签内文本的信息类型:

      • cardinal:按整数或小数发音。

      • digits:按数字发音。

      • telephone:按电话号码常用方式发音。

      • name:按人名发音。

      • address:按地址发音。

      • id:适用于账户名、昵称等。

      • characters:将标签内的文本按字符一一读出。

      • punctuation:将标签内的文本按标点符号的方式读出来。

      • date:按日期发音。

      • time:按时间发音。

      • currency:按金额发音。

      • measure:按计量单位发音。

    • 各<say-as>类型支持范围

      • cardinal

        格式

        示例

        输出

        说明

        数字串

        145

        一百四十五

        整数输入范围:20位以内的正负整数,[-99999999999999999999,99999999999999999999]。

        小数输入范围:对小数点后小数的位数没有特殊限制,建议不超过10位。

        负号+数字串

        -145

        负一百四十五

        以逗号分隔3位数字串

        10,000

        一万

        负号+以逗号分隔3位数字串

        -10,124

        负一万一百二十四

        数字串+小数点+2个零

        10.00

        负号+数字串+小数点+2个零

        -110.00

        负一百一十

        数字串+小数点+数字串

        79.090

        七十九点零九零

        负号+数字串+小数点+数字串

        -79.001

        负七十九点零零一

      • digits

        格式

        示例

        输出

        说明

        数字串

        129090909

        一二九零九零九零九

        对数字串的长度没有特殊限制。

        建议不超过20位,且当数字串超过10位时,每个数字后插入停顿。

      • telephone

        格式

        示例

        输出

        说明

        座机号

        4930286

        四九三 零二八六

        支持7~8位座机号,支持空格和’-‘作为分隔符。

        其中:7位座机号支持“3-4”的数字分隔方式。8位座机号支持“4-4”的数字分隔方式。

        493 0286

        四九三 零二八六

        493-0286

        四九三 零二八六

        62552560

        六二五五 二五六零

        6255 2560

        六二五五 二五六零

        6255-2560

        六二五五 二五六零

        座机号+分机号

        4930286-109

        四九三 零二八六 转幺零九

        支持1~4位分机号。

        4930286转109

        四九三 零二八六 转幺零九

        4930286分机109

        四九三 零二八六 分机幺零九

        4930286分机号109

        四九三 零二八六 分机号幺零九

        区号+座机号

        01062552560

        零幺零 六二五五 二五六零

        支持区号:010、02x、03xx、04xx、05xx、07xx、08xx、09xx。

        010 62552560

        零幺零 六二五五 二五六零

        010 6255 2560

        零幺零 六二五五 二五六零

        010 6255-2560

        零幺零 六二五五 二五六零

        010-62552560

        零幺零 六二五五 二五六零

        010-6255-2560

        零幺零 六二五五 二五六零

        (010)62552560

        零幺零 六二五五 二五六零

        03198907098

        零三幺九 八九零 七零九八

        0319-8907098

        三幺九 八九零 七零九八

        区号+座机号+分机号

        010 62552560-109

        零幺零 六二五五 二五六零 转幺零九

        010-62552560-109

        零幺零 六二五五 二五六零 转幺零九

        (010)62552560-109

        零幺零 六二五五 二五六零 转幺零九

        (010)62552560转109

        零幺零 六二五五 二五六零 转幺零九

        (010)62552560分机109

        零幺零 六二五五 二五六零 分机幺零九

        (010)62552560分机号109

        零幺零 六二五五 二五六零 分机号幺零九

        国家代码+区号+座机号

        86-010-62791627

        八六 零幺零 六二七九 幺六二七

        支持国家代码:86、 (86)、+86、(+86)、0086。并统一读为“八六”。

        (86)10-62791627

        八六 幺零 六二七九 幺六二七

        +86-010-62791627

        八六 零幺零 六二七九 幺六二七

        0086-10-62791627

        八六 幺零 六二七九 幺六二七

        (+86)-10-6279 1627

        八六 幺零 六二七九 幺六二七

        国家代码+区号+座机号+分机号

        (86)21-58118818-207

        八六 二幺 五八幺幺 八八幺八 转二零七

        (86)021-5811-8818-207

        八六 零二幺 五八幺幺 八八幺八 转二零七

        (86)021-58118818转207

        八六 零二幺 五八幺幺 八八幺八 转二零七

        (86)21-5811-8818分机207

        八六 二幺 五八幺幺 八八幺八 分机二零七

        +86-021-58118818分机号207

        八六 零二幺 五八幺幺 八八幺八分机号二零七

        手机号

        151 9099 0987

        幺五幺 九零九九 零九八七

        支持11位手机号,支持3-3-5,3-4-4两种数字分隔方式

        151-909-90987

        幺五幺 九零九 九零九八七

        151 909 90987

        幺五幺 九零九 九零九八七

        国家代码+手机号

        +86-15190990987

        八六 幺五幺 九零九九 零九八七

        (+86)-151-9099-0987

        八六 幺五幺 九零九九 零九八七

        +8615190990987

        八六 幺五幺 九零九九 零九八七

        0086-151 909 90987

        八六 幺五幺 九零九 九零九八七

        服务号

        110

        幺幺零

        • 支持常用的服务号如110。

        • 支持以400/800开头的10位服务号,支持以“3-3-4”的数字分隔方式。

        • 支持以12530/17951/12593开头的16位号码。

        95566

        九五五六六

        4008110510

        四零零 八幺幺 零五幺零

        800-810-8888

        八零零 八幺零 八八八八

        1253013520638377

        幺二五三零 幺三五 二零六三 八三七七

        其他

        (86)(21)9899-80800-0909

        八六 二幺 九八九九 八零八零零 零九零九

        支持“数字串+分隔符(左右括号、-)”方式。

      • address

        格式

        示例

        输出

        说明

        常用地址格式

        元和镇嘉元30-9

        元和镇嘉元三十杠九

        支持常用地址格式。此处地址指标准的邮寄地址。

        市台路388弄1107-1108号

        市台路三八八弄幺幺零七杠幺幺零八号

        华润二十四城六期锦云府3-1-3205

        华润二十四城六期锦云府三杠一杠三二零五

        圣华名都大厦2幢2006室

        圣华名都大厦二幢二零零六室

        五常街道庭院5幢4单元201

        五常街道庭院五幢四单元二零幺

        芙蓉江路150弄19号

        芙蓉江路幺五零弄十九号

      • id

        格式

        示例

        输出

        说明

        字符串

        dell0101

        D E L L 零 一 零 一

        大小写英文字符、阿拉伯数字0~9、下划线。

        输出的空格表示每个字符之间插入停顿,即字符一个一个地读。

        myid_1998

        M Y I D 下划线 一 九 九 八

        AiTest

        A I T E S T

      • characters

        格式

        示例

        输出

        说明

        字符串

        ISBN 1-001-099098-1

        I S B N 一 杠 零 零 一 杠 零 九 九 零 九 八 杠 一

        支持中文汉字、大小写英文字符、阿拉伯数字0~9以及部分全角和半角字符。

        输出的空格表示每个字符之间插入停顿,即字符一个一个地读。标签内的文本如果包含XML的特殊字符,需要做字符转义。常用的共有5个:

        &lt;
        &gt;
        &amp;
        &quot;
        &apos;

        ,分别对应<、>、& 、"、'。

        x10b2345_u

        x 一 零 b 二 三 四 五 下划线 u

        v1.0.1

        v 一 点 零 点 一

        版本号2.0

        版本号二 点 零

        苏M MA000

        苏M M A 零 零 零

        空中客车A330

        空中客车A 三 三 零

        型号s01 s02和s03

        型号s 零 一 s 零二 和s 零 三

        空中客车A330

        空中客车A 三 三 零

        αβγ

        阿尔法 贝塔 伽玛

      • punctuation

        格式

        示例

        输出

        说明

        标点符号

        省略号

        支持常见中英文标点。输出的空格表示每个字符之间插入停顿,即字符一个一个地读。

        标签内的文本如果包含XML的特殊字符,需要做字符转义。常用的共有5个:

        &lt;
        &gt;
        &amp;
        &quot;
        &apos;

        ,分别对应<、>、& 、"、'。

        ……

        省略号

        !"#$%&

        叹号 双引号 井号 dollar 百分号 and

        ‘()*+

        单引号 左括号 右括号 星号 加号

        ,-./:;

        逗号 杠 点 斜杠 冒号 分号

        <=>?@

        小于 等号 大于 问号 at

        [\]^_

        左方括号 反斜线 右方括号 脱字符 下划线

      • date

        格式

        示例

        输出

        说明

        xx年

        71年

        七一年

        支持2位和4位年份。其中:

        • 2位年份支持60年~99年、00年~09年、10年~19年。

        • 4位年份支持1000年~1999年、2000年~2099年。

        04年

        零四年

        19年

        一九年

        1011年

        一零一一年

        1998年

        一九九八年

        2008年

        二零零八年

        xx年xx月

        98年4月

        九八年四月

        当月份为1到9月时,支持开头带”0”和不带”0”两种写法。例如”1908年4月”和”1908年04月”。

        1998年04月

        一九九八年四月

        08年8月

        零八年八月

        2008年8月

        二零零八年八月

        xx年xx月xx日xx年xx月xx号

        98年4月23日

        九八年四月二十三日

        当日期为1到9日时,支持开头带”0”和不带”0”两种写法。例如”1908年4月8日”和”1908年04月08日”。

        1998年04月23日

        一九九八年四月二十三日

        08年8月8号

        零八年八月八号

        2008年08月08号

        二零零八年八月八号

        xx年xx月xx日xx年xx月xx号

        98年4月23日

        九八年四月二十三日

        当日期为1到9日时,支持开头带”0”和不带”0”两种写法。例如”1908年4月8日”和”1908年04月08日”。

        1998年04月23日

        一九九八年四月二十三日

        08年8月8号

        零八年八月八号

        2008年08月08号

        二零零八年八月八号

        xx月xx号

        3月20日

        三月二十日

        08月07号

        八月七号

        年月缩写

        2018/08

        二零一八年八月

        支持”/“、”-“、”.”作为缩写的分隔符。

        2018-08

        二零一八年八月

        2018.08

        二零一八年八月

        年月日缩写

        2018/08/08

        二零一八年八月八日

        2018-8-8

        二零一八年八月八日

        2018.08.08

        二零一八年八月八日

        xx年xx月xx日~xx年xx月xx日xx年xx月xx号~xx年xx月xx号

        04年9月1日~30日

        零四年九月一日至三十日

        支持”~”、”-“作为”至”的缩写标志。

        2004年09月01号-2008年06月08号

        二零零四年九月一号至二零零八年六月八号

        xx年xx月xx日~xx日xx年xx月xx号~xx号

        04年9月1日~30日

        零四年九月一日至三十日

        2004年09月01号-2008年06月08号

        二零零四年九月一号至二零零八年六月八号

        xx年xx月~xx年xx月

        01年04月~10年04月

        零一年四月至一零年四月

        2001年04月~2010年04月

        二零零一年四月至二零一零年四月

        xx月xx日~xx月xx日xx月xx号~xx月xx号

        10月1日~10月7日

        十月一日至十月七日

        10月01号~10月07号

        十月一号至十月七号

        xx月xx日~xx日xx月xx号~xx号

        10月1日~7日

        十月一日至七日

        10月01号~07号

        十月一号至七号

        年月日缩写~年月日缩写

        2018/03/03~2019/01/01

        二零一八年三月三日至二零一九年一月一日

        支持”/“、”.”作为缩写的分隔符,支持”~””-“作为”至”的缩写标志。

        1997.9.9~1998.9.9

        一九九七年九月九日至一九九八年九月九日

        月日缩写~月日缩写

        10/20~10/31

        十月二十日至十月三十一日

        xx~xx月xx月~xx月

        1~10月

        一至十月

        1月~10月

        一月至十月

        月日年缩写

        10/20/2018

        二零一八年十月二十日

        仅支持4位的年份,仅支持“/”作为日期的分隔符,仅支持”月/日/年”的书写方式。

      • time

        格式

        示例

        输出

        说明

        时刻

        12:00

        十二点

        支持常用时间和时间范围格式。

        12:00:00点

        十二点

        10:20分

        十点二十分

        10:20:30

        十点二十分三十秒

        09:18:14

        九点十八分十四秒

        时刻~时刻

        11:00~12:00

        十一点到十二点

        09:00-14:00

        九点到十四点

        11:00~11:30

        十一点到十一点三十分

        11:00-12:18

        十一点到十二点十八分

        10:30~11:00

        十点三十分到十一点

        09:28-10:00

        九点二十八分到十点

        10:20~11:20

        十点二十分到十一点二十分

        06:00~08:00

        六点到八点

        上午10:20~下午13:30

        上午十点二十分到下午十三点三十分

        时间缩写

        5:00am

        凌晨五点整

        5:30am

        凌晨五点半

        5:20:12am

        凌晨五点二十分十二秒

        7:00am

        上午七点整

        7:30AM

        上午七点半

        7:20:12a.m.

        上午七点二十分十二秒

        07:08:12A.M.

        上午七点零八分十二秒

        5:00pm

        下午五点整

        5:30PM

        下午五点半

        5:20:12p.m.

        下午五点二十分十二秒

        05:09:12P.M.

        下午五点零九分十二秒

        9:00pm

        晚上九点整

        9:30pm

        晚上九点半

        9:20:12PM

        晚上九点二十分十二秒

        9:02:12P.M.

        晚上九点零二分十二秒

        12:00pm

        中午十二点整

        12:30p.m.

        中午十二点半

        12:20:12PM

        中午十二点二十分十二秒

      • currency

        格式

        示例

        输出

        说明

        数字+金额标识符

        12.00RMB

        十二人民币

        支持AUD(澳元) 、CAD(加元)、 HKD(港币)、JPY(日元)、USD(美元)、CHF(瑞士法郎)、NOK(挪威克朗)、SEK(瑞典克朗)、GBP(英镑)、 RMB(人民币)、CNY(元)和EUR(欧元)。

        支持的数字格式包括:整数、小数以及以逗号分隔的国际写法。

        12.50RMB

        十二点五零人民币

        12,000,000RMB

        一千二百万人民币

        12,000,000.00RMB

        一千二百万人民币

        12,000.35RMB

        一万两千点三五人民币

        金额标识符+数字

        $12

        十二美元

        支持 CAD(加元)、 $(美元)、 $(美元)、Fr(法郎)、kr(丹麦克朗)、 £(英镑)、¥(元)¥(元)和 €(欧元)。

        支持的数字格式包括:整数、小数以及以逗号分隔的国际写法。

        $12.00

        十二美元

        $12.12

        二点一二美元

        $12,000

        一万两千美元

        $12,000.00

        一万两千美元

        $12,000.99

        一万两千点九九美元

        其他默认读法

        1213

        一千二百一十三

        1213KML

        一千二百一十三K M L

        1213.00KML

        一千二百一十三K M L

        1213.9KML

        一千二百一十三点九K M L

        1,000KML

        一千K M L

        1,000.00KML

        一千K M L

        1,000.98KML

        一千点九八K M L

        12,000

        一万两千

      • measure

        格式

        示例

        输出

        说明

        数字+中文单位

        2片

        两片

        支持常见中文单位及单位缩写。

        120公顷

        一百二十公顷

        100多毫克

        一百多毫克

        100来米

        一百来米

        100余人

        一百余人

        1厘米20毫米

        一厘米二十毫米

        120.00平方公里

        一百二十平方公里

        数字+单位缩写

        120.56cm²

        一百二十点五六平方厘米

        120㎡56cm²

        一百二十平方米五十六平方厘米

        100m12cm6mm

        一百米十二厘米六毫米

        范围

        10~15kg

        十至十五千克

        10.24~789.82亩

        十点二四至七百八十九点八二亩

        10米~15米

        十米至十五米

        10.24cm~19.08cm

        十点二四厘米至十九点零八厘米

        数字+单位+"/"+单位

        10元/斤

        十元每斤

        199~299元/件

        一百九十九至二百九十九元每件

        299.99元/g~399.99元/g

        二百九十九点九九元每克至三百九十九点九九元每克

        其他默认读法

        12扎

        十二扎

        30rm

        三十r m

        4万万同胞

        四万万同胞

        12.897微克

        十二点八九七微克

      其中<say-as>常见符号读法如下表所示。

      符号

      读法

      !

      叹号

      双引号

      #

      井号

      $

      dollar

      %

      百分号

      &

      and

      单引号

      (

      左括号

      )

      右括号

      *

      +

      ,

      逗号

      -

      .

      /

      斜杠

      :

      零冒号

      ;

      分号

      <

      小于

      =

      等号

      >

      大于

      ?

      问号

      @

      at

      [

      左方括号

      \

      反斜线

      ]

      右方括号

      ^

      脱字符

      _

      下划线

      `

      反引号

      {

      左花括号

      |

      竖线

      }

      右花括号

      ~

      波浪线

      叹号

      左双引号

      右双引号

      左单引号

      右单引号

      左括号

      右括号

      逗号

      句号

      冒号

      分号

      问号

      顿号

      省略号

      ……

      省略号

      左书名号

      右书名号

      人民币符号

      大于等于

      小于等于

      不等于

      约等于

      ±

      加减

      ×

      π

      Α

      阿尔法

      Β

      贝塔

      Γ

      伽玛

      Δ

      德尔塔

      Ε

      艾普西龙

      Ζ

      捷塔

      Ε

      依塔

      Θ

      西塔

      Ι

      艾欧塔

      Κ

      喀帕

      拉姆达

      Μ

      Ν

      Ξ

      克西

      Ο

      欧麦克轮

      Ρ

      西格玛

      Τ

      Υ

      宇普西龙

      Φ

      fai

      Χ

      Ψ

      普赛

      Ω

      欧米伽

      α

      阿尔法

      β

      贝塔

      γ

      伽玛

      δ

      德尔塔

      ε

      艾普西龙

      ζ

      捷塔

      η

      依塔

      θ

      西塔

      ι

      艾欧塔

      κ

      喀帕

      λ

      拉姆达

      μ

      ν

      ξ

      克西

      ο

      欧麦克轮

      π

      ρ

      σ

      西格玛

      τ

      υ

      宇普西龙

      φ

      fai

      χ

      ψ

      普赛

      ω

      欧米伽

      <say-as>常见计量单位如下表所示。

      格式

      类别

      示例

      缩写
      长度
      nm(纳米)、μm(微米)、 mm(毫米)、cm(厘米)、m(米)、km(千米)、ft(英尺)、in(英寸)
      面积
      cm²(平方厘米)、㎡(平方米)、km2(平方千米)、SqFt(平方英尺)
      体积
      cm³(立方厘米)、m³(立方米)、km3(立方千米)、mL(毫升)、L(升)、gallon(加仑)

      重量

      μg(微克)、mg(毫克)、g(克)、kg(千克)

      时间

      min(分)、sec(秒)、ms(毫秒)

      电磁

      μA(微安)、mA(毫安)、Ω(欧姆)、Hz(赫兹)、KHz(千赫兹)、MHz(兆赫兹)、GHz(吉赫兹)、V(伏)、kV(千伏)、kWh(千瓦时)

      声音

      dB(分贝)

      气压
      Pa(帕)、kPa(千帕)、Mpa(兆帕)
      中文单位
      支持不限于上述类别的中文单位,例如“米”、“秒”、“美元”、“毫升每瓶”等。以及中文量词,例如“架”、“场”、“头”、“部”、“盆”等。

    • 标签关系

      <say-as>标签仅包括文本。

    • 示例

      • cardinal

        <speak>
          <say-as interpret-as="cardinal">12345</say-as>
        </speak>

        音频效果:SSML-say-as_Cardinal.mp3

      • digits

        <speak>
          <say-as interpret-as="digits">12345</say-as>
        </speak>

        音频效果:SSML-say-as_digit.mp3

      • telephone

        <speak>
          <say-as interpret-as="telephone">12345</say-as>
        </speak>

        音频效果:SSML-say-as_Telephone.mp3

      • name

        <speak>
          她的曾用名是<say-as interpret-as="name">曾小凡</say-as>
        </speak>

        音频效果:SSML-say-as_Name.mp3

      • address

        <speak>
          <say-as interpret-as="address">富路国际1号楼3单元304</say-as>
        </speak>

        音频效果:SSML-say-as_Address.mp3

      • id

        <speak>
          <say-as interpret-as="id">myid_1998</say-as>
        </speak>

        音频效果:SSML-say-as_id.mp3

      • characters

        <speak>
          <say-as interpret-as="characters">希腊字母αβ</say-as>
        </speak>

        音频效果:SSML-say-as_characters.mp3

      • punctuation

        <speak>
          <say-as interpret-as="punctuation"> -./:;</say-as>
        </speak>

        音频效果:SSML-say-as_punctuation.mp3

      • date

        <speak>
          <say-as interpret-as="date">1000-10-10</say-as>
        </speak>

        音频效果:SSML-say-as_date.mp3

      • time

        <speak>
          <say-as interpret-as="time">5:00am</say-as>
        </speak>

        音频效果:SSML-say-as_time.mp3

      • currency

        <speak>
          <say-as interpret-as="currency">13,000,000.00RMB</say-as>
        </speak>

        音频效果:SSML-say-as_currency.mp3

      • measure

        <speak>
          <say-as interpret-as="measure">100m12cm6mm</say-as>
        </speak>

        音频效果:SSML-say-as_measure.mp3

    综合示例

    本示例将详细展示SSML的使用方法,您可以直接拷贝到管控台的项目功能配置中,测试效果。音频效果:综合示例.mp3

    <speak>
      相传北宋年间,
      <say-as interpret-as="date">1121-10-10</say-as>,
      <say-as interpret-as="address">开封城</say-as>
      郊外的早晨笼罩在一片
      <sub alias="双十一">11.11</sub>
      前买买买的欢乐海洋中。一支运货的骡队刚进入城门
      <soundEvent src="http://nls.alicdn.com/sound-event/bell.wav"/>
      一个肤白貌美
      <phoneme alphabet="py" ph="de5">地</phoneme>
      姑娘便拦下第一排的小哥<say-as interpret-as="name">阿发。</say-as>
    </speak>
    
    <speak voice="xiaomei">
      “亲,本店今日特惠,鞋履全场
      <say-as interpret-as="digits">199</say-as>
      减
      <say-as interpret-as="cardinal">100</say-as>,
      走过路过不要错过”。
    </speak>
    
    <speak voice="sicheng" rate="150">
      “不啦不啦,赶着上货,已经
      <say-as interpret-as="time">09:59:59</say-as>
      了,再晚就供应链断裂了”。
    </speak>
    
    <speak>
      <say-as interpret-as="name">阿发</say-as>
      擦了擦汗,带着运货队伍,径直穿过闹巷,耳边充斥着各种叫卖声:
    </speak>
    
    <speak voice="ninger" rate="200">
      最新花色现染布匹,买两尺送一尺;
    </speak>
    
    <speak voice="xiaobei">
      爆款纱帽头盔,7天无理由退货;
    </speak>
    
    <speak voice="sijia">
      专治大小方脉,调理男人妇人疑难杂症。
    </speak>
    
    <speak>
      突然,一匹马不知怎么受了惊,在路上嘶鸣狂奔
      <soundEvent src="http://nls.alicdn.com/sound-event/horse-neigh.wav"/>
      一个孩子也吓坏了,跌跌撞撞地扑向大人怀里
      <break time="50ms"/>大喊道:
    </speak>
    
    <speak voice="sitong" rate="150">
      “妈妈,妈妈!”
    </speak>
    
    <speak>
      这时,
      <say-as interpret-as="name">阿发</say-as>
      心想
    </speak>
    
    <speak effect="robot" pitch="-100">
      “吓死宝宝了!”
    </speak>
    
    <speak>
      于是他赶紧捂住了
      <phoneme alphabet="py" ph="he2 bao1">钱包</phoneme>,
      继续赶路送货。一路上,
      <say-as interpret-as="address">开封城</say-as>
      的繁荣景象给
      <say-as interpret-as="name">阿发</say-as>
      留下了深刻的印象。
    </speak>
    
    <speak bgm="http://nls.alicdn.com/bgm/2.wav" backgroundMusicVolume="30" rate="-200">
      物换星移,繁华落尽,于是他在购物狂欢之余握起画笔,勾勒出一幅长卷,并命名为《清明上河图》。
    </speak>