Introduction to SSML

更新时间:
复制 MD 格式

This topic describes the features of Speech Synthesis Markup Language (SSML) and provides examples of how to use its tags.

Overview

SSML is an XML-based markup language for speech synthesis. Unlike plain text, SSML provides more options to enrich the synthesized content and customize the final audio output. SSML controls not only what the speech synthesis service reads but also how it reads the text. You can control features such as sentence breaks, word segmentation, pronunciation, speed, pauses, intonation, volume, and even add background music.

Note

The Alibaba Cloud Speech Synthesis service implements SSML based on the W3C Speech Synthesis Markup Language Version 1.0. The service supports a subset of W3C tags that are most relevant to business needs.

Usage

Note
  • SSML is currently supported only for Chinese and English voices. The supported SSML tags and content may vary between Chinese and English. For more information, see the tag descriptions and examples in this topic.

  • All text must be enclosed in a <speak></speak> tag. Each short-text speech synthesis task can contain only one <speak></speak> tag. However, long-text synthesis tasks, such as real-time and asynchronous tasks, can contain multiple <speak></speak> tags.

  • Long-text speech synthesis requests can use multiple <speak></speak> tags and a combination of SSML and plain text. The following example shows a complete text that can be sent as a single request to the long-text speech synthesis service for testing.

    <speak><say-as interpret-as="telephone">114</say-as> query number <say-as interpret-as="cardinal">123</say-as> to start. The sum is <say-as interpret-as="digits">1234</say-as>. <say-as interpret-as="name">Zhang San</say-as>'s package. <say-as interpret-as="address">Fulu International, Building 1, Unit 3, Room 304</say-as><say-as interpret-as="nick">Li Si 6689</say-as></speak>
  • You can omit the XML header that precedes the <speak> tag.

  • If the text within a tag contains special XML characters, you must escape them. The following list shows the common special characters and their corresponding escaped forms.

    • " (double quotation mark) corresponds to: &quot;

    • ' (apostrophe or single quotation mark) corresponds to: &apos;

    • & (ampersand) corresponds to: &amp;

    • < (less than sign) corresponds to: &lt;

    • > (greater than sign) corresponds to: &gt;

You can upload the tagged text as the value of the text parameter to the speech synthesis service. The following code provides an example for the Java SDK:

SpeechSynthesizer synthesizer = new SpeechSynthesizer(client, getSynthesizerListener());
String text = "<speak>Close your eyes and take a rest.<break time=\"500ms\"/>Okay, now open your eyes.</speak>";
synthesizer.setText(text);

The following request is sent to the speech synthesis service:

{
    "payload": {
        "volume": 50,
        "sample_rate": 16000,
        "format": "wav",
        "text": "<speak>Close your eyes and take a rest.<break time=\"500ms\"/>Okay, now open your eyes.</speak>"
    },
    "context": {
        "sdk": {
            "name": "nls-sdk-java",
            "version": "2.0.4"
        }
    },
    "header": {
        "namespace": "SpeechSynthesizer",
        "name": "StartSynthesis",
        "message_id": "5fdf78c0dd574b6897f3cb204dd0****",
        "appkey": "fd4er4aa****",
        "task_id": "6e1be78ef5804c50a2c5a8b92de1****"
    }
}      

Tags

<speak>

  • Description

    The <speak> tag is the root element for all supported Speech Synthesis Markup Language (SSML) tags and must enclose all SSML-formatted text.

  • Syntax

     <speak>Text that uses SSML tags</speak>
  • Properties

    The <speak> tag supports the following properties.

    Property Name

    Property type

    Value

    Required

    Description

    voice

    String

    The name of the online speaker that can be called. The value is the lowercase value of the voice parameter, such as "siyue".

    No

    A proprietary tag of Alibaba Cloud speech synthesis. It specifies the speaker during synthesis and has a higher priority than the speaker specified by the voice parameter in the API request.

    Important

    When you make a call using Alibaba Cloud Model Studio, the speaker name is specified in the model parameter. For more information, see Model List.

    Important

    "Xiaoyue" cannot currently be set by voice.

    encodeType

    String

    PCM, WAV, or MP3

    No

    A proprietary tag of Alibaba Cloud speech synthesis. It specifies the audio file format during synthesis and has a higher priority than the format specified by the format parameter in the API request.

    The encodeType setting in SSML tags is invalid for real-time long-text synthesis tasks.

    sampleRate

    String

    8000, 16000, 24000, or 48000

    No

    A proprietary tag of Alibaba Cloud speech synthesis. It specifies the audio sample rate during synthesis and has a higher priority than the rate specified by the sample_rate parameter in the API request.

    The sampleRate setting in SSML tags is invalid for real-time long-text synthesis tasks.

    rate

    String

    An integer from -500 to 500. The default value is 0.

    • A value greater than 0 increases the speech rate.

    • A value less than 0 decreases the speech rate.

    No

    A proprietary tag of Alibaba Cloud speech synthesis. It specifies the audio speed during synthesis and has a higher priority than the speed specified by the speech_rate parameter in the API request.

    Important

    When you call the service through Alibaba Cloud Model Studio, the valid range for this parameter is [0.5, 2]. The value corresponds to the actual speed multiplier. The default value is 1, which indicates the normal speed.

    pitch

    String

    An integer from -500 to 500. The default value is 0.

    • A value greater than 0 raises the pitch.

    • A value less than 0 lowers the pitch.

    No

    A proprietary tag of Alibaba Cloud speech synthesis. It specifies the audio pitch during synthesis and has a higher priority than the pitch specified by the pitch_rate parameter in the API request.

    Important

    When you call the service through Alibaba Cloud Model Studio, the valid range for this parameter is [0.5, 2]. The value corresponds to the actual pitch multiplier. The default value is 1, which indicates the normal pitch.

    volume

    String

    An integer from 0 to 100. The default value is 50.

    • A value greater than 50 increases the volume.

    • A value less than 50 decreases the volume.

    No

    A proprietary tag of Alibaba Cloud speech synthesis. It specifies the audio volume during synthesis and has a higher priority than the volume specified by the volume parameter in the API request.

    effect

    String

    robot, lolita, lowpass, echo, eq, lpfilter, or hpfilter

    No

    A proprietary tag of Alibaba Cloud speech synthesis. Use this tag to produce different sound effects for the synthesized speech.

    • robot: robot sound effect.

    • lolita: lively female voice effect.

    • lowpass: low-pass sound effect.

    • echo: echo sound effect.

    • eq: equalizer.

    • lpfilter: low-pass filter.

    • hpfilter: high-pass filter.

    Note

    • The values eq, lpfilter, and hpfilter are advanced effectors. You can use the effectValue property to customize their effects.

    • An SSML document supports only one sound effect. You cannot specify multiple effect properties.

    • Using a sound effect increases system latency.

    effectValue

    String

    When the effect property is set to eq, lpfilter, or hpfilter, use this parameter to modify the default effect of the effector.

    No

    • eq (equalizer): The system uses eight levels by default. The corresponding frequencies are ["40 Hz", "100 Hz", "200 Hz", "400 Hz", "800 Hz", "1600 Hz", "4000 Hz", "12000 Hz"]. The corresponding bandwidths are ["1.0q", "1.0q", "1.0q", "1.0q", "1.0q", "1.0q", "1.0q", "1.0q"]. You must input the gains for the eight levels. The value range is [-20 dB, 20 dB]. For example, effectValue="1 1 1 1 1 1 1 1". This is a string of eight integers separated by spaces. A value of 0 means the gain for the corresponding frequency is not adjusted.

    • lpfilter: Enter the frequency value for the low-pass filter. The value must be an integer in the range of (0, target sample rate/2]. For example, effectValue="800".

    • hpfilter: Enter the frequency value for the high-pass filter. The value must be an integer in the range of (0, target sample rate/2]. For example, effectValue="1200".

    bgm

    String

    The name of the online background music. See the bgm property description.

    No

    A proprietary tag of Alibaba Cloud speech synthesis. It adds the specified background music to the synthesized speech.

    backgroundMusicVolume

    String

    An integer from 0 to 100. The default value is 50.

    • A value greater than 50 increases the volume.

    • A value less than 50 decreases the volume.

    No

    A proprietary tag of Alibaba Cloud speech synthesis. It controls the volume of the background music.

    The following describes the bgm property.

    Built-in URL

    Custom background music URL

    The Alibaba Cloud speech synthesis service has several built-in background music tracks for you to try:

    You can use custom background music as needed. Store the background music in Alibaba Cloud OSS. The bucket must have at least public-read permissions. For more information, see Create buckets. Use the HTTP or HTTPS protocol to generate a file access link. For more information, see Upload files.

    Audio requirements:

    • 16 kHz sample rate, single-channel WAV format.

    • For short-text speech synthesis, the file size cannot exceed 2.8 MB. For long-text speech synthesis, the file size cannot exceed 7.3 MB.

    • If the synthesis duration is longer than the background music duration, the background music will loop. If the background music is not in WAV format, you can use FFmpeg to convert it: ffmpeg -i input_audio -acodec pcm_s16le -ac 1 -ar 16000 target.wav.

    • If the URL in the tag contains special XML characters, you must escape them.

    • The bit depth must be 16-bit.

    Important

    You are legally responsible for the copyright of the audio you upload.

  • Tag relationship

    The <speak> tag can contain text and the following tags:

    • <break>

    • <s>

    • <w>

    • <phoneme>

    • <say-as>

    • <vhml/>

  • Examples

    • Empty property

      <speak>
        Text that uses SSML tags
      </speak>

      Audio effect: SSML-speak1.mp3

    • voice property

      <speak voice="xiaogang">
        I am a male voice.
      </speak>

      Audio effect: SSML-speak2.mp3

    • encodeType property

      <speak encodeType="mp3">
        I can generate audio in a compressed format.
      </speak>

      Audio effect: SSML-encode.mp3

    • sampleRate property

      <speak sampleRate="8000">
        Look at my file size. It is half the size of an audio file with a 16000 sample rate.
      </speak>

      Audio effect: SSML-speak4.mp3

    • rate property

      <speak rate="200">
        I speak faster than normal.
      </speak>

      Audio effect: SSML-speak5.mp3

    • pitch property

      <speak pitch="-100">
        But my pitch is lower than others.
      </speak>

      Audio effect: SSML-speak6.mp3

    • volume property

      <speak volume="80">
        My volume is also very loud.
      </speak>

      Audio effect: SSML-speak7.mp3

    • Property combination (separated by spaces)

      <speak rate="200" pitch="-100" volume="80">
        So when you put it all together, my voice sounds like this.
      </speak>

      Audio effect: SSML-speak8.mp3

    • effect property

      <speak effect="robot">
        Do you like the robot WALL-E?
      </speak>

      Audio effect: SSML-speak9.mp3

    • bgm property

      <speak bgm="http://nls.alicdn.com/bgm/2.wav" backgroundMusicVolume="30" rate="-500" volume="40">
        <break time="2s"/>
        On the shady cliff, old trees are shrouded in mist.
        <break time="700ms"/>
        The sound of rain still lingers in the bamboo forest.
        <break time="700ms"/>
        The cotton plant is known to benefit the country's economy.
        <break time="700ms"/>
        The scenery of Mianzhou is always a pity to miss.
        <break time="2s"/>
      </speak>

      Audio effect: SSML-speak10.mp3

<emotion>

  • Description

    The <emotion> tag is used for multi-emotion speech synthesis. This tag is optional. If you use this tag with a speaker that does not support multi-emotion speech synthesis, the synthesis request fails.

  • Syntax

    <emotion category="happy" intensity="1.0">The weather is really nice today!</emotion>
  • Properties

    The <emotion> tag supports the following properties.

    Property Name

    Type

    Value

    Required

    Description

    category

    String

    Enumeration value, such as neutral or happy.

    Yes

    Specifies the emotion of the speech. For the emotions supported by each speaker, see the following table.

    intensity

    String

    Floating-point value. The range is [0.01, 2.0].

    No

    Specifies the intensity of the emotion. The default value is 1.0, which indicates the predefined emotion intensity. The minimum value is 0.01, which results in a slight tendency toward the target emotion. The maximum value is 2.0, which doubles the intensity of the target emotion.

    This topic describes the support for multi-emotion voices.

    Voice name

    voice parameter value

    Emotion category

    Zhifeng_Multi-emotion

    zhifeng_emo

    angry, fear, happy, neutral, sad, surprise

    Zhibing_Multi-emotion

    zhibing_emo

    angry, fear, happy, neutral, sad, surprise

    Zhimiao_Multi-emotion

    zhimiao_emo

    serious, sad, disgust, jealousy, embarrassed, happy, fear, surprise, neutral, frustrated, affectionate, gentle, angry, newscast, customer-service, story, living

    Zhimi_Multi-emotion

    zhimi_emo

    angry, fear, happy, hate, neutral, sad, surprise

    Zhiyan_Multi-emotion

    zhiyan_emo

    neutral, happy, angry, sad, fear, hate, surprise, arousal

    Zhibei_Multi-emotion

    zhibei_emo

    neutral, happy, angry, sad, fear, hate, surprise

    Zhitian_Multi-emotion

    zhitian_emo

    neutral, happy, angry, sad, fear, hate, surprise

  • Tag relationship

    The <emotion> tag can contain text and the following tags:

    • <s>

    • <sub>

    • <say-as>

    • <w>

    • <phoneme>

    • <soundEvent/>

    • <break/>

    • <vhml/>

  • Example

    • Empty property

      <speak voice="zhitian_emo">
          <emotion category="happy" intensity="1.0">The weather is really nice today!</emotion>
      </speak>

      Audio effect: SSML-emotion.wav

<break>

  • Description

    You can use this tag to insert a pause in the text. This tag is optional.

  • Syntax

     # Empty property
     <break/>
     # With time property
     <break time="string"/>
  • Properties

    Note

    If you use the <break> tag without any properties, the default pause duration is 1s.

    Property Name

    Type

    Property value

    Required

    Description

    time

    String

    [number] s / [number] ms

    No

    Sets the duration of the pause in seconds (s) or milliseconds (ms), such as "2s" or "50ms".

    • [number]s: The duration in seconds. [number] must be an integer from 1 to 10.

    • [number]ms: The duration in milliseconds. [number] must be an integer from 50 to 10000.

    Important

    If multiple <break> tags appear consecutively, the total pause duration is the sum of the durations of each tag. If the total duration exceeds 10 seconds, the effective pause duration is 10 seconds.

    For example, in the following code, the total pause duration of the three consecutive <break> tags is 15 seconds. Because this exceeds 10 seconds, the final effective pause duration is 10 seconds.

     <speak>
       Close your eyes and take a rest.<break time="5s"/><break time="5s"/><break time="5s"/>Okay, now open your eyes.
     </speak>
  • Tag relationship

    <break> is an empty tag and cannot contain any other tags. If an SSML structure contains an <s> tag, you can place the <break> tag inside the <s> tag to set a pause for the current paragraph or sentence.

  • Example

     <speak>
       Close your eyes and take a rest.<break time="500ms"/>Okay, now open your eyes.
     </speak>

    Audio effect: SSML-break.mp3

<s>

  • Description

    You can use this tag to represent the sentence structure of the text. This tag is optional.

  • Syntax

     <s>Text</s>
  • Properties

    None.

  • Tag relationship

    The <s> tag can contain text and the following tags:

    • <break>

    • <w>

    • <phoneme>

    • <say-as>

    • <vhml/>

  • Example

    <speak><s>This is the first sentence.</s><s>This is the second sentence.</s></speak>

    Audio effect: SSML-s.mp3

<sub>

  • Description

    This tag replaces the text within it with an alias.

  • Syntax

     <sub alias="string"></sub>
  • Properties

    Property Name

    Property Type

    Property value

    Required

    Description

    alias

    String

    The replacement content.

    Yes

    Used to replace the text within the tag.

  • Tag relationship

    The <sub> tag can contain text and the <vhml/> tag.

  • Example

     <speak><sub alias="network protocol standard">W3C</sub></speak>

    Audio effect: SSML-sub.mp3

<w>

  • Description

    You can use this tag to define the word structure of the text. This tag is optional. Because English text is typically tokenized by spaces, this tag is usually not required for English. The content within a <w> tag must be a single word or phrase. The word or phrase cannot be a mix of Chinese and other languages.

  • Syntax

     <w>Text</w>
  • Properties

    None.

  • Tag relationship

    The <w> tag can contain text and the <vhml/> tag.

  • Example

     <speak>The Mayor of Nanjing <w>Jiang Daqiao</w> gave a speech today.</speak>

    Audio effect: SSML-w.mp3

<vhml>

  • Description

    This is a Virtual Human Markup Language tag used to mark animations for human bodies and facial expressions. You can insert this tag into the text. It contains a src attribute with a user-defined string. The content of the src attribute is returned in the timestamp, which you can use to drive the facial or body animations of a virtual human. In the timestamp, the content of the src attribute appears in the text field, phoneme is null, and begin_index, end_index, begin_time, and end_time are all 0. The order of <vhml> tags in the timestamp usually follows their order in the original text. However, if a <vhml> tag is placed near text that requires regularization (for example, 123 is regularized to 'one hundred twenty-three'), the order may not match. The relative order between multiple <vhml> tags is always preserved.

  • Syntax

    <vhml src="content"/>

  • Properties

    None.

  • Tag relationship

    <vhml/> is an empty tag.

  • Example

    <speak><vhml src="start"/>Today we will<vhml src="t0"/>introduce this new product<vhml src="end"/></speak>
    Timestamp result:
    {
       "subtitles":[
          {
             "text":"start",
             "phoneme":"null",
             "begin_index":0,
             "end_index":0,
             "begin_time":0,
             "end_time":0
          },
          {
             "text":"To",
             "phoneme":"null",
             "begin_index":0,
             "end_index":1,
             "begin_time":0,
             "end_time":88
          },
          {
             "text":"day",
             "phoneme":"null",
             "begin_index":1,
             "end_index":2,
             "begin_time":88,
             "end_time":238
          },
          {
             "text":"we",
             "phoneme":"null",
             "begin_index":2,
             "end_index":3,
             "begin_time":238,
             "end_time":450
          },
          {
             "text":"will",
             "phoneme":"null",
             "begin_index":3,
             "end_index":4,
             "begin_time":450,
             "end_time":650
          },
          {
             "text":"in",
             "phoneme":"null",
             "begin_index":4,
             "end_index":5,
             "begin_time":650,
             "end_time":825
          },
          {
             "text":"t0",
             "phoneme":"null",
             "begin_index":0,
             "end_index":0,
             "begin_time":0,
             "end_time":0
          },
          {
             "text":"tro",
             "phoneme":"null",
             "begin_index":5,
             "end_index":6,
             "begin_time":825,
             "end_time":988
          },
          {
             "text":"duce",
             "phoneme":"null",
             "begin_index":6,
             "end_index":7,
             "begin_time":988,
             "end_time":1213
          },
          {
             "text":"this",
             "phoneme":"null",
             "begin_index":7,
             "end_index":8,
             "begin_time":1213,
             "end_time":1325
          },
          {
             "text":"new",
             "phoneme":"null",
             "begin_index":8,
             "end_index":9,
             "begin_time":1325,
             "end_time":1525
          },
          {
             "text":"pro",
             "phoneme":"null",
             "begin_index":9,
             "end_index":10,
             "begin_time":1525,
             "end_time":1663
          },
          {
             "text":"duct",
             "phoneme":"null",
             "begin_index":10,
             "end_index":11,
             "begin_time":1663,
             "end_time":1750
          },
          {
             "text":"end",
             "phoneme":"null",
             "begin_index":0,
             "end_index":0,
             "begin_time":0,
             "end_time":0
          }
       ]
    }

<phoneme>

  • Description

    You can use this tag to control the pronunciation of the text within it. This tag is optional and is not supported for English text.

  • Syntax

     <phoneme alphabet="string" ph="string">Text</phoneme>
  • Properties

    Property Name

    Property type

    Value

    Required

    Description

    alphabet

    String

    py

    Yes

    "py" indicates Pinyin.

    ph

    String

    The Pinyin string corresponding to the text within the tag.

    Yes

    Pinyin assignment rules:

    • The Pinyin of different characters must be separated by spaces. The number of Pinyin syllables must be equal to the number of characters.

    • Each Pinyin syllable consists of a sound and a tone. Tones are numbered from 1 to 5, where "5" indicates a neutral tone.

  • Tag relationship

    The <phoneme> tag can contain text and the <vhml/> tag.

  • Example

     <speak>
        Go to the <phoneme alphabet="py" ph="dian3 dang4 hang2">pawnshop</phoneme> to <phoneme alphabet="py" ph="dang4 diao4">pawn</phoneme> this thing.
     </speak>

    Audio effect: SSML-phoneme.mp3

<soundEvent>

  • Description

    A sound cue tag. You can use this tag to insert a sound cue at any position during SSML synthesis.

  • Syntax

     <soundEvent src="URL"/>
  • Properties

    Property Name

    Property Type

    Value

    Required

    Description

    src

    String

    URL path of the sound cue resource.

    Yes

    You can use a custom sound cue as needed. Store the sound cue in Alibaba Cloud OSS. The bucket must have at least public-read permissions. For more information, see Create buckets. Use the HTTP or HTTPS protocol to generate a file access link. For more information, see Upload files.

    Audio requirements:

    • 16 kHz sample rate, single-channel WAV format.

    • The file size cannot exceed 2 MB.

    • The bit depth must be 16-bit.

    Important

    You are legally responsible for the copyright of the audio you upload.

  • Tag relationship

    <soundEvent> is an empty tag and cannot contain any other tags.

  • Example

     <speak>
       A horse was frightened <soundEvent src="http://nls.alicdn.com/sound-event/horse-neigh.wav"/> and people scattered to hide.
     </speak>

    Audio effect: SSML-sound-event.mp3

<say-as>

  • Description

    This tag indicates the information type of the text within it, which allows the text to be pronounced according to the default method for that type.

  • Syntax

     <say-as interpret-as="string">Text</say-as>
  • Properties

    Property Name

    Property type

    Property Value

    Required

    Description

    interpret-as

    String

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

    Yes

    Indicates the information type of the text within the tag:

    • cardinal: Pronounced as an integer or decimal.

    • digits: Pronounced digit by digit.

    • telephone: Pronounced in the common way for telephone numbers.

    • name: Pronounced as a person's name.

    • address: Pronounces the text as an address.

    • id: Suitable for account names, nicknames, and so on.

    • characters: The text within the tag is read out character by character.

    • punctuation: The text within the tag is read out as punctuation marks.

    • date: Pronounced as a date.

    • time: Pronounced "time".

    • currency: Pronounced as an amount of money.

    • measure: Pronounced as a unit of measurement.

  • Supported formats for each <say-as> type

    • cardinal

      Format

      Example

      Chinese output

      Description

      Number string

      145

      One hundred forty-five

      Integer input range: positive and negative integers up to 20 digits, from -99,999,999,999,999,999,999 to 99,999,999,999,999,999,999.

      Decimal input range: No specific limit on the number of decimal places, but it is recommended to not exceed 10.

      Minus sign + number string

      -145

      Minus one hundred forty-five

      3-digit number string separated by commas

      10,000

      Ten thousand

      Minus sign + 3-digit number string separated by commas

      -10,124

      Minus ten thousand one hundred twenty-four

      Number string + decimal point + two zeros

      10.00

      Ten

      Minus sign + number string + decimal point + two zeros

      -110.00

      Minus one hundred ten

      Number string + decimal point + number string

      79.090

      Seventy-nine point zero nine zero

      Minus sign + number string + decimal point + number string

      -79.001

      Minus seventy-nine point zero zero one

      Format

      Example

      English output

      Description

      Number string

      145

      one hundred forty five

      Integer input range: positive and negative integers up to 13 digits, from -999,999,999,999 to 999,999,999,999.

      Decimal input range: No specific limit on the number of decimal places, but it is recommended to not exceed 10.

      Number string starting with zero

      0145

      one hundred forty five

      Minus sign + number string

      -145

      minus hundred forty five

      3-digit number string separated by commas

      60,000

      sixty thousand

      Minus sign + 3-digit number string separated by commas

      -208,000

      minus two hundred eight thousand

      Number string + decimal point + zero

      12.00

      twelve

      Number string + decimal point + number string

      12.34

      twelve point three four

      3-digit number string separated by commas + decimal point + number string

      1,000.1

      one thousand point one

      Minus sign + number string + decimal point + number string

      -12.34

      minus twelve point three four

      Minus sign + 3-digit number string separated by commas + decimal point + number string

      -1,000.1

      minus one thousand point one

      (3-digit comma-separated) number string + hyphen + (3-digit comma-separated) number

      1-1,000

      one to one thousand

      Other default readings

      012.34

      twelve point three four

      None

      1/2

      one half

      -3/4

      minus three quarters

      5.1/6

      five point one over six

      -3 1/2

      minus three and a half

      1,000.3^3

      one thousand point three to the power of three

      3e9.1

      three times ten to the power of nine point one

      23.10%

      twenty three point one percent

    • digits

      Format

      Example

      Chinese output

      Description

      Number string

      129090909

      One two nine zero nine zero nine zero nine

      No specific limit on the length of the number string, but it is recommended to not exceed 20 digits.

      If the number string exceeds 10 digits, a pause is inserted after each digit.

      Format

      Example

      English output

      Description

      Number string

      12034

      one two zero three four

      No specific limit on the length of the number string, but it is recommended to not exceed 20 digits.

      When the number string is grouped by spaces or hyphens, a comma is inserted between groups to create a proper pause. Up to five groups are supported.

      Number string + space or hyphen + number string + space or hyphen + number string + space or hyphen + number string

      1-23-456 7890

      one, two three, four five six, seven eight nine zero

    • telephone

      Format

      Example

      Chinese Outputs

      Description

      Landline number

      4930286

      Four nine three, zero two eight six

      Supports 7- to 8-digit landline numbers. You can use spaces and hyphens (-) as separators.

      A 7-digit landline number supports the 3-4 separation format. An 8-digit landline number supports the 4-4 separation format.

      493 0286

      Four nine three, zero two eight six

      493-0286

      Four nine three, zero two eight six

      62552560

      Six two five five, two five six zero

      6255 2560

      Six two five five, two five six zero

      6255-2560

      Six two five five, two five six zero

      Landline number + extension number

      4930286-109

      Four nine three, zero two eight six, extension one zero nine

      Supports 1- to 4-digit extension numbers.

      4930286 ext. 109

      Four nine three, zero two eight six, extension one zero nine

      4930286 ext. 109

      Four nine three, zero two eight six, extension one zero nine

      4930286 ext. 109

      Four nine three, zero two eight six, extension one zero nine

      Area code + landline number

      01062552560

      Zero one zero, six two five five, two five six zero

      Supported area codes: 010, 02x, 03xx, 04xx, 05xx, 07xx, 08xx, 09xx.

      010 62552560

      Zero one zero, six two five five, two five six zero

      010 6255 2560

      Zero one zero, six two five five, two five six zero

      010 6255-2560

      Zero one zero, six two five five, two five six zero

      010-62552560

      Zero one zero, six two five five, two five six zero

      010-6255-2560

      Zero one zero, six two five five, two five six zero

      (010)62552560

      Zero one zero, six two five five, two five six zero

      03198907098

      Zero three one nine, eight nine zero, seven zero nine eight

      0319-8907098

      Three one nine, eight nine zero, seven zero nine eight

      Area code + landline number + extension number

      010 62552560-109

      Zero one zero, six two five five, two five six zero, extension one zero nine

      None

      010-62552560-109

      Zero one zero, six two five five, two five six zero, extension one zero nine

      (010)62552560-109

      Zero one zero, six two five five, two five six zero, extension one zero nine

      (010) 62552560 ext. 109

      Zero one zero, six two five five, two five six zero, extension one zero nine

      (010) 62552560 ext. 109

      Zero one zero, six two five five, two five six zero, extension one zero nine

      (010) 62552560 ext. 109

      Zero one zero, six two five five, two five six zero, extension one zero nine

      Country code + area code + landline number

      86-010-62791627

      Eight six, zero one zero, six two seven nine, one six two seven

      Supported country codes include 86, (86), +86, (+86), and 0086. All are pronounced as "eight six".

      (86)10-62791627

      Eight six, one zero, six two seven nine, one six two seven

      +86-010-62791627

      Eight six, zero one zero, six two seven nine, one six two seven

      0086-10-62791627

      Eight six, one zero, six two seven nine, one six two seven

      (+86)-10-6279 1627

      Eight six, one zero, six two seven nine, one six two seven

      Country code + area code + landline number + extension number

      (86)21-58118818-207

      Eight six, two one, five eight one one, eight eight one eight, extension two zero seven

      None

      (86)021-5811-8818-207

      Eight six, zero two one, five eight one one, eight eight one eight, extension two zero seven

      (86) 021-58118818 ext. 207

      Eight six, zero two one, five eight one one, eight eight one eight, extension two zero seven

      (86) 21-5811-8818 ext. 207

      Eight six, two one, five eight one one, eight eight one eight, extension two zero seven

      +86-021-58118818 ext. 207

      Eight six, zero two one, five eight one one, eight eight one eight, extension two zero seven

      Mobile number

      139 0000 5678

      One three nine, zero zero zero zero, five six seven eight

      Supports 11-digit mobile numbers with 3-3-5 and 3-4-4 separation formats.

      139-000-05678

      One three nine, zero zero zero, zero five six seven eight

      139 000 05678

      One three nine, zero zero zero, zero five six seven eight

      Country code + mobile number

      +86-13900005678

      Eight six, one three nine, zero zero zero zero, five six seven eight

      None

      (+86)-139-0000-5678

      Eight six, one three nine, zero zero zero zero, five six seven eight

      +8613900005678

      Eight six, one three nine, zero zero zero zero, five six seven eight

      0086-139 000 05678

      Eight six, one three nine, zero zero zero, zero five six seven eight

      Service number

      123

      One two three

      • Supports common service numbers.

      • Supports 10-digit service numbers that start with 400 or 800, in a 3-3-4 separation format.

      • Supports 16-digit numbers that start with 12530, 17951, or 12593.

      95678

      Nine five six seven eight

      4008110510

      Four zero zero, eight one one, zero five one zero

      800-810-8888

      Eight zero zero, eight one zero, eight eight eight eight

      1253013520638377

      One two five three zero, one three five, two zero six three, eight three seven seven

      Other

      (86)(21)9899-80800-0909

      Eight six, two one, nine eight nine nine, eight zero eight zero zero, zero nine zero nine

      Supports a format of a number string plus a separator, such as parentheses or a hyphen.

      Format

      Example

      English output

      Description

      Number string

      12034

      one two oh three four

      No specific limit on the length of the number string, but it is recommended to not exceed 20 digits. When the number string is grouped by spaces or hyphens, a comma is inserted between groups to create a proper pause. Up to five groups are supported.

      Number string + space or hyphen + number string + space or hyphen + number string

      1-23-456 7890

      one, two three, four five six, seven eight nine oh

      Plus sign + number string + space or hyphen + number string

      +43-211-0567

      plus four three, two one one, oh five six seven

      Left parenthesis + number string + right parenthesis + space + number string + space or hyphen + number string

      (21) 654-3210

      (two one) six five four, three two one oh

    • address

      Format

      Example

      Chinese Output

      Description

      Common address format

      Yuanhe Town, Jiayuan 30-9

      Yuanhe Town, Jiayuan thirty-nine

      Supports common address formats. In this context, an address refers to a standard mailing address.

      No. 1107-1108, Lane 388, Shitai Road

      No. one one zero seven to one one zero eight, Lane three eight eight, Shitai Road

      Huarun 24 City, Phase 6, Jinyunfu 3-1-3205

      Huarun 24 City, Phase 6, Jinyunfu three-one-three-two-zero-five

      Room 2006, Building 2, Shenghua Mingdu Building

      Room two zero zero six, Building two, Shenghua Mingdu Building

      Building 5, Unit 4, Room 201, Wuchang Street Courtyard

      Building five, Unit four, Room two zero one, Wuchang Street Courtyard

      No. 19, Lane 150, Furongjiang Road

      No. nineteen, Lane one five zero, Furongjiang Road

      This tag is not supported for English text.

    • id

      Format

      Example

      Output

      Description

      String

      dell0101

      D E L L zero one zero one

      Supports uppercase and lowercase English letters, Arabic numerals 0-9, and underscores.

      The space in the output indicates a pause between each character, meaning they are read one by one.

      myid_1998

      M Y I D underscore one nine nine eight

      AiTest

      A I T E S T

      For English text, this tag functions the same as the characters type.

    • characters

      Format

      Example

      Chinese output

      Description

      String

      ISBN 1-001-099098-1

      I S B N one dash zero zero one dash zero nine nine zero nine eight dash one

      Supports Chinese characters, uppercase and lowercase English letters, Arabic numerals 0-9, and some full-width and half-width characters.

      The space in the output indicates a pause between each character, meaning they are read one by one. If the text within the tag contains special XML characters, you must escape them.

      x10b2345_u

      x one zero b two three four five underscore u

      v1.0.1

      v one point zero point one

      Version 2.0

      Version two point zero

      Su M MA000

      Su M M A zero zero zero

      Airbus A330

      Airbus A three three zero

      Models s01 s02 and s03

      Models s zero one s zero two and s zero three

      Airbus A330

      Airbus A three three zero

      αβγ

      alpha beta gamma

      Format

      Example

      English output

      Description

      String

      *b+3$.c-0'=α

      asterisk B plus three dollar dot C dash zero apostrophe equals alpha

      Supports Chinese characters, uppercase and lowercase English letters, Arabic numerals 0-9, and some full-width and half-width characters.

      The space in the output indicates a pause between each character, meaning they are read one by one.

      If the text within the tag contains special XML characters, you must escape them.

    • punctuation

      Format

      Example

      Chinese output

      Description

      Punctuation mark

      Ellipsis

      Supports common Chinese and English punctuation. The space in the output indicates a pause between each character, meaning they are read one by one.

      If the text within the tag contains special XML characters, you must escape them.

      ……

      Ellipsis

      !"#$%&

      Exclamation mark, double quotation mark, pound sign, dollar, percent sign, and

      ‘()*+

      Single quotation mark, left parenthesis, right parenthesis, asterisk, plus sign

      ,-./:;

      Comma, dash, period, slash, colon, semicolon

      <=>?@

      Less than, equal sign, greater than, question mark, at

      [\]^_

      Left square bracket, backslash, right square bracket, caret, underscore

      For English text, this tag functions the same as the characters type.

    • date

      Format

      Example

      Chinese output

      Description

      xx year

      71 year

      1971

      Supports 2-digit and 4-digit years. Details:

      • 2-digit years: 60-99, 00-09, 10-19.

      • 4-digit years: 1000-1999, 2000-2099.

      2004

      Zero four

      19 year

      2019

      1011 year

      1011

      1998 year

      Nineteen ninety-eight

      2008

      Two thousand eight

      xx year xx month

      98 year 4 month

      Ninety-eight, April

      For months 1 to 9, both formats with and without a leading "0" are supported. For example, "1908 year 4 month" and "1908 year 04 month".

      1998 year 04 month

      Nineteen ninety-eight, April

      08 year 8 month

      Zero eight, August

      2008 year 8 month

      Two thousand eight, August

      xx year xx month xx day

      98 year 4 month 23 day

      April 23, 1998

      For days 1 to 9, both formats with and without a leading "0" are supported. For example, "1908 year 4 month 8 day" and "1908 year 04 month 08 day".

      1998 year 04 month 23 day

      Nineteen ninety-eight, April twenty-third

      08 year 8 month 8 day

      Zero eight, August eighth

      2008 year 08 month 08 day

      Two thousand eight, August eighth

      xx year xx month xx day

      98 year 4 month 23 day

      April 23, 1998

      For days 1 to 9, both formats with and without a leading "0" are supported. For example, "1908 year 4 month 8 day" and "1908 year 04 month 08 day".

      1998 year 04 month 23 day

      Nineteen ninety-eight, April twenty-third

      08 year 8 month 8 day

      Zero eight, August eighth

      2008 year 08 month 08 day

      Two thousand eight, August eighth

      xx month xx day

      March 20

      March twentieth

      None

      08 month 07 day

      August seventh

      Abbreviated year and month

      2018/08

      Two thousand eighteen, August

      Supports "/", "-", and "." as separators.

      2018-08

      Two thousand eighteen, August

      2018.08

      Two thousand eighteen, August

      Abbreviated year, month, and day

      2018/08/08

      Two thousand eighteen, August eighth

      2018-8-8

      Two thousand eighteen, August eighth

      2018.08.08

      Two thousand eighteen, August eighth

      YYYY-MM-DD to YYYY-MM-DD

      04 year 9 month 1 day to 30 day

      Zero four, September first to thirtieth

      Supports "~" and "-" as abbreviations for "to".

      2004 year 09 month 01 day-2008 year 06 month 08 day

      Two thousand four, September first to two thousand eight, June eighth

      YYYY-MM-DD - YYYY-MM-DD

      04 year 9 month 1 day to 30 day

      Zero four, September first to thirtieth

      2004 year 09 month 01 day-2008 year 06 month 08 day

      Two thousand four, September first to two thousand eight, June eighth

      xx year xx month to xx year xx month

      01 year 04 month to 10 year 04 month

      Zero one, April to ten, April

      2001 year 04 month to 2010 year 04 month

      Two thousand one, April to two thousand ten, April

      xx month xx day to xx month xx day

      October 1 to October 7

      October first to October seventh

      October 1 to October 7

      October first to October seventh

      Month DD to DD

      October 1 to 7

      October first to seventh

      October 1–7

      October first to seventh

      Abbreviated YYYY/MM/DD to YYYY/MM/DD

      2018/03/03~2019/01/01

      Two thousand eighteen, March third to two thousand nineteen, January first

      Supports "/" and "." as separators, and "~" and "-" as abbreviations for "to".

      1997.9.9~1998.9.9

      Nineteen ninety-seven, September ninth to nineteen ninety-eight, September ninth

      Abbreviated MM/DD to MM/DD

      10/20~10/31

      October twentieth to October thirty-first

      Month to Month

      1 to 10 month

      One to ten months

      1 month to 10 month

      January to October

      Abbreviated MM/DD/YYYY

      10/20/2018

      Two thousand eighteen, October twentieth

      Only 4-digit years are supported. Only "/" is supported as a separator. Only "MM/DD/YYYY" format is supported.

      Format

      Example

      English output

      Description

      YYYY/MM or YYYY-MM

      2000/01

      two thousand, oh one

      Spans multiple years.

      1900-01

      nineteen hundred, oh one

      2001-02

      twenty oh one, oh two

      2019-20

      twenty nineteen, twenty

      1998-99

      nineteen ninety eight, ninety nine

      1999-00

      nineteen ninety nine, oh oh

      Four-digit number starting with 1 or 2

      2000

      two thousand

      Four-digit year.

      1900

      nineteen hundred

      1905

      nineteen oh five

      2021

      twenty twenty one

      Day of the week

      or

      Day of the week range

      or

      Day&Day

      mon-wed

      monday to wednesday

      For a range of days, if the text within the tag contains special XML characters, you must escape them.

      tue~fri

      tuesday to friday

      sat&sun

      saturday and sunday

      DD-DD MMM, YYYY

      or

      DD~DD MMM, YYYY

      or

      DD&DD MMM, YYYY

      19-20 Jan, 2000

      the nineteen to the twentieth of january two thousand

      DD is a two-digit day, MMM is a three-letter abbreviation or full word for the month, and YYYY is a four-digit year starting with 1 or 2.

      01 ~ 10 Jul, 2020

      the first to the tenth of july twenty twenty

      05&06 Apr, 2009

      the fifth and the sixth of april two thousand nine

      MMM DD-DD

      or

      MMM DD~DD

      or

      MMM DD&DD

      Feb 01 - 03

      feburary the first to the third

      MMM is a three-letter abbreviation or full word for the month, and DD is a two-digit day.

      Aug 10~20

      august the tenth to the twentieth

      Dec 11&12

      december the eleventh and the twelfth

      MMM-MMM

      or

      MMM~MMM

      or

      MMM&MMM

      Jan-Jun

      january to june

      MMM is a three-letter abbreviation or full word for the month.

      jul ~ dec

      july to december

      sep&oct

      september and october

      YYYY-YYYY

      or

      YYYY~YYYY

      1990 - 2000

      nineteen ninety to two thousand

      YYYY is a four-digit year starting with 1 or 2.

      2001~2021

      two thousand one to twenty twenty one

      WWW DD MMM YYYY

      Sun 20 Nov 2011

      sunday the twentieth of november twenty eleven

      WWW is a three-letter abbreviation or full word for the day of the week. DD is a two-digit day. MMM is a three-letter abbreviation or full word for the month. MM is a two-digit month (or three-letter abbreviation or full word). YYYY is a four-digit year starting with 1 or 2.

      WWW DD MMM

      Sun 20 Nov

      sunday the twentieth of november

      WWW MMM DD YYYY

      Sun Nov 20 2011

      sunday november the twentieth twenty eleven

      WWW MMM DD

      Sun Nov 20

      sunday november the twentieth

      WWW YYYY-MM-DD

      Sat 2010-10-01

      aturday october the first twenty ten

      WWW YYYY/MM/DD

      Sat 2010/10/01

      saturday october the first twenty ten

      WWW MM/DD/YYYY

      Sun 11/20/2011

      sunday november the twentieth twenty eleven

      MM/DD/YYYY

      11/20/2011

      november the twentieth twenty eleven

      YYYY

      1998

      nineteen ninety eight

      Other default readings

      10 Mar, 2001

      the tenth of march two thousand one

      None

      10 Mar

      the tenth of march

      Mar 2001

      march two thousand one

      Fri. 10/Mar/2001

      friday the tenth of march two thousand one

      Mar 10th, 2001

      march the tenth two thousand one

      Mar 10

      march the tenth

      2001/03/10

      march the tenth two thousand one

      2001-03-10

      march the tenth two thousand one

      2000s

      two thousands

      2010's

      twenty tens

      1900's

      nineteen hundreds

      1990s

      nineteen nineties

    • time

      Format

      Example

      Chinese output

      Description

      Time

      12:00

      Twelve o'clock

      Supports common time and time range formats.

      12:00:00

      Twelve o'clock

      10:20

      Ten twenty

      10:20:30

      Ten twenty and thirty seconds

      09:18:14

      Nine eighteen and fourteen seconds

      Time to Time

      11:00~12:00

      Eleven to twelve

      09:00-14:00

      Nine to fourteen

      11:00~11:30

      Eleven to eleven thirty

      11:00-12:18

      Eleven to twelve eighteen

      10:30~11:00

      Ten thirty to eleven

      09:28-10:00

      Nine twenty-eight to ten

      10:20~11:20

      Ten twenty to eleven twenty

      06:00~08:00

      Six to eight

      10:20 AM to 1:30 PM

      Ten twenty AM to one thirty PM

      Abbreviated time

      5:00 am

      Five o'clock in the morning

      5:30 am

      Five thirty in the morning

      5:20:12 am

      Five twenty and twelve seconds in the morning

      7:00 am

      Seven o'clock in the morning

      7:30 AM

      Seven thirty in the morning

      7:20:12 a.m.

      Seven twenty and twelve seconds in the morning

      07:08:12 A.M.

      Seven oh eight and twelve seconds in the morning

      5:00 pm

      Five o'clock in the afternoon

      5:30 PM

      Five thirty in the afternoon

      5:20:12 p.m.

      Five twenty and twelve seconds in the afternoon

      05:09:12 P.M.

      Five oh nine and twelve seconds in the afternoon

      9:00 pm

      Nine o'clock at night

      9:30 pm

      Nine thirty at night

      9:20:12 PM

      Nine twenty and twelve seconds at night

      9:02:12 P.M.

      Nine oh two and twelve seconds at night

      12:00 pm

      Twelve o'clock noon

      12:30 p.m.

      Twelve thirty noon

      12:20:12 PM

      Twelve twenty and twelve seconds noon

      Format

      Example

      English output

      Description

      HH:MM AM or PM

      09:00 AM

      nine A M

      HH is a one- or two-digit hour, MM is a two-digit minute, and AM/PM indicates morning/afternoon.

      09:03 PM

      nine oh three P M

      09:13 p.m.

      nine thirteen p m

      HH:MM

      21:00

      twenty one hundred

      HHMM

      100

      one oclock

      Time-Time

      8:00 am - 05:30 pm

      eight a m to five p m

      Supports common time formats and ranges.

      7:05~10:15 AM

      seven oh five to ten fifteen A M

      09:00-13:00

      nine oclock to thirteen hundred

    • currency

      Format

      Example

      Chinese output

      Description

      Number + currency identifier

      12.00 CNY

      Twelve CNY

      Supports AUD (Australian dollar), CAD (Canadian dollar), HKD (Hong Kong dollar), JPY (Japanese yen), USD (US dollar), HKD (Hong Kong dollar), JPY (Japanese yen), USD (US dollar), CHF (Swiss franc), NOK (Norwegian krone), SEK (Swedish krona), GBP (British pound), CNY (renminbi), CNY (yuan), and EUR (euro).

      Supported number formats include integers, decimals, and the international format with comma separators.

      12.50 CNY

      Twelve point five zero CNY

      12,000,000 CNY

      Twelve million CNY

      12,000,000.00 CNY

      Twelve million CNY

      12,000.35 CNY

      CNY 12,000.35

      Currency identifier + number

      $12

      Twelve dollars

      Supports CAD (Canadian dollar), $ (dollar), Fr (franc), kr (Danish krone), £ (pound), ¥ (yuan), and € (euro).

      Supported number formats include integers, decimals, and the international format with comma separators.

      $12.00

      Twelve dollars

      $12.12

      2.12 USD

      $12,000

      Twelve thousand dollars

      $12,000.00

      Twelve thousand dollars

      $12,000.99

      12,000.99 USD

      Other default readings

      1213

      One thousand two hundred thirteen

      None

      1213 KML

      One thousand two hundred thirteen K M L

      1213.00 KML

      One thousand two hundred thirteen K M L

      1213.9 KML

      One thousand two hundred thirteen point nine K M L

      1,000 KML

      One thousand K M L

      1,000.00 KML

      One thousand K M L

      1,000.98 KML

      One thousand point nine eight K M L

      12,000

      Twelve thousand

      Format

      Example

      English output

      Description

      Number + currency identifier

      1.00 CNY

      one yuan

      Supported number formats: integers, decimals, and the international format with comma separators.

      Supported currency identifiers:

      CN¥ (yuan)

      CNY (yuan)

      CNY (yuan)

      AUD (australian dollar)

      CAD (canadian dollar)

      CHF (swiss franc)

      DKK (danish krone)

      EUR (euro)

      GBP (british pound)

      HKD (Hong Kong dollar)

      JPY (japanese yen)

      NOK (norwegian krone)

      SEK (swedish krona)

      SGD (singapore dollar)

      USD (united states dollar)

      2.02 CNY

      two point zero two yuan

      1,000.23 CN¥

      one thousand point two three yuan

      1.01 SGD

      one singapore dollar and one cent

      2.01 CAD

      two canadian dollars and one cent

      3.1 HKD

      three hong kong dollars and ten cents

      1,000.00 EUR

      one thousand euros

      Currency identifier + number

      US$ 1.00

      one US dollar

      Supported number formats: integers, decimals, and the international format with comma separators.

      Supported currency identifiers:

      US$ (US dollar)

      CA$ (Canadian dollar)

      AU$ (Australian dollar)

      SG$ (Singapore dollar)

      HK$ (Hong Kong dollar)

      C$ (Canadian dollar)

      A$ (Australian dollar)

      $ (dollar)

      £ (pound)

      € (euro)

      CN¥ (yuan)

      CNY (yuan)

      CNY (yuan)

      AUD (australian dollar)

      CAD (canadian dollar)

      CHF (swiss franc)

      DKK (danish krone)

      EUR (euro)

      GBP (british pound)

      HKD (Hong Kong dollar)

      JPY (japanese yen)

      NOK (norwegian krone)

      SEK (swedish krona)

      SGD (singapore dollar)

      USD (united states dollar)

      $0.01

      one cent

      JPY 1.01

      one japanese yen and one sen

      £1.1

      one pound and ten pence

      €2.01

      two euros and one cent

      USD 1,000

      one thousand united states dollars

      Number + quantifier + currency identifier

      or

      Currency identifier + number + quantifier

      1.23 Tn CNY

      one point two three trillion yuan

      Supported quantifier formats include the following:

      thousand

      million

      billion

      trillion

      Mil (million)

      mil (million)

      Bil (billion)

      bil (billion)

      MM (million)

      Bn (billion)

      bn (billion)

      Tn (trillion)

      tn (trillion)

      K(thousand)

      k (thousand)

      M (million)

      m (million)

      $1.2 K

      one point two thousand dollars

    • measure

      Format

      Example

      Chinese output

      Description

      Number + Chinese unit

      2 pieces

      Two pieces

      Supports common Chinese units and unit abbreviations.

      120 hectares

      One hundred twenty hectares

      Over 100 milligrams

      Over one hundred milligrams

      About 100 meters

      About one hundred meters

      Over 100 people

      Over one hundred people

      1 centimeter 20 millimeters

      One centimeter twenty millimeters

      120.00 square kilometers

      One hundred twenty square kilometers

      Number + unit abbreviation

      120.56 cm²

      One hundred twenty point five six square centimeters

      120 ㎡ 56 cm²

      One hundred twenty square meters fifty-six square centimeters

      100 m 12 cm 6 mm

      One hundred meters twelve centimeters six millimeters

      Range

      10~15 kg

      Ten to fifteen kilograms

      10.24~789.82 mu

      Ten point two four to seven hundred eighty-nine point eight two mu

      10 meters to 15 meters

      Ten meters to fifteen meters

      10.24 cm~19.08 cm

      Ten point two four centimeters to nineteen point zero eight centimeters

      Number + unit + "/" + unit

      10 yuan/jin

      Ten yuan per jin

      199 to 299 yuan/piece

      One hundred ninety-nine to two hundred ninety-nine yuan per piece

      299.99 yuan/g to 399.99 yuan/g

      Two hundred ninety-nine point nine nine yuan per gram to three hundred ninety-nine point nine nine yuan per gram

      Other default readings

      12 dozen

      12 bundles

      30 rm

      Thirty r m

      400 million compatriots

      Four hundred million compatriots

      12.897 micrograms

      Twelve point eight nine seven micrograms

      Format

      Example

      English output

      Description

      Number + unit of measure

      1.0 kg

      one kilogram

      Supported number formats: integers, decimals, and the international format with comma separators.

      Supports common unit abbreviations.

      1,234.01 km

      one thousand two hundred thirty four point zero one kilometres.

      Unit of measure

      mm2

      square millimetre

    • The following table lists common symbols and how they are read.

      Symbol

      Chinese reading

      English reading

      !

      Exclamation mark

      exclamation mark

      Double quotation mark

      double quote

      #

      Pound sign

      pound

      $

      dollar

      dollar

      %

      Percent sign

      percent

      &

      and

      and

      Single quotation mark

      left quote

      Left parenthesis

      left parenthesis

      Right parenthesis

      right parenthesis

      *

      Star

      asterisk

      +

      Plus

      plus

      ,

      Comma

      comma

      -

      Bar

      dash

      .

      Point

      dot

      /

      Slash

      slash

      :

      No colon

      colon

      Semicolon

      semicolon

      <

      Less than

      less than

      =

      Equal sign

      equals

      >

      Greater than

      greater than

      ?

      Question mark

      question mark

      @

      at

      at

      [

      Left square bracket

      left bracket

      \

      Backslash

      back slash

      ]

      Right square bracket

      right bracket

      ^

      Caret

      caret

      _

      Underscore

      underscore

      `

      Backtick

      back quote

      {

      Left brace

      left brace

      |

      Vertical line

      vertical bar

      }

      Right brace

      right brace

      ~

      Tilde

      tilde

      Exclamation mark

      exclamation mark

      Left double quotation mark

      left double quote

      Right double quotation mark

      right double qute

      Left single quotation mark

      left quote

      Right single quotation mark

      right quote

      Left parenthesis

      left parenthesis

      Right parenthesis

      right parenthesis

      Comma

      comma

      Period

      full stop

      Bar

      em dash

      :

      Colon

      colon

      Semicolon

      semicolon

      Question mark

      question mark

      Enumeration comma

      enumeration comma

      Ellipsis

      ellipsis

      ……

      Ellipsis

      ellipsis

      Left book title mark

      left guillemet

      Right book title mark

      right guillemet

      CNY symbol

      yuan

      Greater than or equal to

      greater than or equal to

      Less than or equal to

      less than or equal to

      Not equal to

      not equal

      Approximately equal to

      approximately equal

      ±

      Plus or minus

      plus or minus

      ×

      Multiply

      times

      π

      Pi

      pi

      Α

      Alpha

      alpha

      Β

      Beta

      beta

      Γ

      Gamma

      gamma

      Δ

      Delta

      delta

      Ε

      Epsilon

      epsilon

      Ζ

      Zeta

      zeta

      Θ

      West Tower

      theta

      Ι

      Iota

      iota

      Κ

      Kappa

      kappa

      Lambda

      lambda

      Μ

      Mu

      mu

      Ν

      Persistent

      nu

      Ξ

      Kexi

      ksi

      Ο

      Omicron

      omicron

      Pi

      pi

      Ρ

      Flexible

      rho

      Sigma

      sigma

      Τ

      Tau

      tau

      Υ

      Upsilon

      upsilon

      Φ

      fai

      phi

      Χ

      Container

      chi

      Ψ

      Psi

      psi

      Ω

      Omega

      omega

      α

      Alpha

      alpha

      β

      Beta

      beta

      γ

      Gamma

      gamma

      δ

      Delta

      delta

      ε

      Epsilon

      epsilon

      ζ

      Zeta

      zeta

      η

      Eta

      eta

      θ

      Xita

      theta

      ι

      Iota

      iota

      κ

      Kappa

      kappa

      λ

      Lambda

      lambda

      μ

      Mu

      mu

      ν

      Twist

      nu

      ξ

      Casey

      ksi

      ο

      Omicron

      omicron

      π

      Pi

      pi

      ρ

      Flexible

      rho

      σ

      Sigma

      sigma

      τ

      Settings

      tau

      υ

      Upsilon

      upsilon

      φ

      fai

      phi

      χ

      Chi

      chi

      ψ

      Psi

      psi

      ω

      Omega

      omega

    • The following table lists common units of measurement.

      Format

      Category

      Chinese example

      English example

      Abbreviation

      Length

      nm (nanometer), μm (micrometer), mm (millimeter), cm (centimeter), m (meter), km (kilometer), ft (foot), in (inch)

      nm (nanometer), μm (micrometer), mm (millimeter), cm (centimeter), m (meter), km (kilometer), ft (foot), in (inch)

      Area

      cm² (square centimeter), ㎡ (square meter), km² (square kilometer), SqFt (square foot)

      cm² (square centimeter), ㎡ (square meter), km2 (square kilometer), SqFt (square foot)

      Volume

      cm³ (cubic centimeter), m³ (cubic meter), km³ (cubic kilometer), mL (milliliter), L (liter), gallon (gallon)

      cm³ (cubic centimeter), m³ (cubic meter), km3 (cubic kilometer), mL (milliliter), L (liter), gal (gallon)

      Weight

      μg (microgram), mg (milligram), g (gram), kg (kilogram)

      μg (microgram), mg (milligram), g (gram), kg (kilogram)

      Time

      min (minute), sec (second), ms (millisecond)

      min (minute), sec (second), ms (millisecond)

      Electromagnetic

      μA (microampere), mA (milliampere), Ω (ohm), Hz (hertz), kHz (kilohertz), MHz (megahertz), GHz (gigahertz), V (volt), kV (kilovolt), kWh (kilowatt-hour)

      μA (microamp), mA (milliamp), Hz (hertz), kHz (kilohertz), MHz (megahertz), GHz (gigahertz), V (volt), kV (kilovolt), kWh (kilowatt hour)

      Sound

      dB (decibel)

      dB (decibel)

      Atmospheric pressure

      Pa (pascal), kPa (kilopascal), Mpa (megapascal)

      Pa (pascal), kPa (kilopascal), MPa (megapascal)

      Other common units

      Supports Chinese units not limited to the categories above, such as "meter", "second", "dollar", "milliliter per bottle", and Chinese classifiers for items such as aircraft, events, cattle, movies, and pots.

      Supports units of measurement not limited to the categories above, such as tsp (teaspoon), rpm (revolutions per minute), KB (kilobyte), and mmHg (millimeters of mercury).

  • Tag relationship

    The <say-as> tag can contain text and the <vhml/> tag.

  • Examples

Comprehensive example

This example demonstrates how to use SSML in detail. You can copy the code to the project configuration in the console to test the effect. Audio effect: Comprehensive example.mp3.

Important

  • The narrator's voice in the sample audio is a custom voice that is not yet publicly available. To try custom voices, see Speech Synthesis Voice Customization.

  • Each short-text speech synthesis request can contain up to 300 characters and can use the <speak> tag only once. The following example must be synthesized in multiple parts, with one part for each <speak> tag.

<speak>
  Legend has it that during the Northern Song Dynasty,
  on <say-as interpret-as="date">1121-10-10</say-as>,
  the morning outside <say-as interpret-as="address">Kaifeng City</say-as>
  was filled with the joyous atmosphere of shopping before
  <sub alias="Double 11">11.11</sub>.
  Just as a mule train carrying goods entered the city gate
  <soundEvent src="http://nls.alicdn.com/sound-event/bell.wav"/>,
  a fair-skinned, beautiful
  <phoneme alphabet="py" ph="de5">girl</phoneme>
  stopped a young man in the front row named <say-as interpret-as="name">A Fa</say-as>.
</speak>

<speak voice="xiaomei">
  "Dear, our shop has a special offer today. Get
  <say-as interpret-as="cardinal">100</say-as>
  off for every
  <say-as interpret-as="digits">199</say-as>
  spent on shoes. Don't miss out!"
</speak>

<speak voice="sicheng" rate="150">
  "No, no, I'm in a hurry to deliver goods. It's already
  <say-as interpret-as="time">09:59:59</say-as>.
  Any later and the supply chain will be broken."
</speak>

<speak>
  <say-as interpret-as="name">A Fa</say-as>
  wiped his sweat and led the delivery team through the bustling alley, his ears filled with various cries of vendors:
</speak>

<speak voice="ninger" rate="200">
  "Latest patterns, freshly dyed cloth. Buy two chi, get one chi free!"
</speak>

<speak voice="xiaobei">
  "Best-selling gauze hats and helmets. 7-day no-reason return!"
</speak>

<speak voice="sijia">
  "Specializing in major and minor pulses, treating difficult and complex diseases for men and women."
</speak>

<speak>
  Suddenly, a horse, somehow startled, neighed and galloped wildly down the road.
  <soundEvent src="http://nls.alicdn.com/sound-event/horse-neigh.wav"/>
  A child, also frightened, stumbled into an adult's arms
  <break time="50ms"/>and shouted:
</speak>

<speak voice="sitong" rate="150">
  "Mom, Mom!"
</speak>

<speak>
  At this moment,
  <say-as interpret-as="name">A Fa</say-as>
  thought to himself,
</speak>

<speak effect="robot" pitch="-100">
  "That scared me to death!"
</speak>

<speak>
  So he quickly clutched his
  <phoneme alphabet="py" ph="he2 bao1">wallet</phoneme>
  and continued on his way to deliver the goods. Along the way,
  the prosperous scene of <say-as interpret-as="address">Kaifeng City</say-as>
  left a deep impression on
  <say-as interpret-as="name">A Fa</say-as>.
</speak>

<speak bgm="http://nls.alicdn.com/bgm/2.wav" backgroundMusicVolume="30" rate="-200">
  Times change and glory fades. So, after the shopping spree, he picked up a brush and painted a long scroll, naming it "Along the River During the Qingming Festival".
</speak>