# 語音處理

平臺在多元素整合的視頻合成基礎能力之外,還另外提供語音處理的相關能力,支持用戶對于視頻合成的語音相關內容進行預處理,提供多項能力,TTS、ASR、NLP、多音字、音色遷移等,此外提供USSML(Unified Speech Synthesis Markup Language)能力,歸一化各TTS供應商的 SSML(Speech Synthesis Markup Language)語法格式。

# 能力介紹

  • TTS語音合成
    • 根據用戶選擇的發音人音色結合傳入的文本內容將文本朗讀出來,支持調節朗讀聲音的音調,語速和音量。需要注意所有語言的發音人都可以合成英文文本;所有語言的發音人都可以合成自己語言的文本;粵語、滬語等中文方言發音人可以合成中文文本。
  • ASR語音識別
    • 根據用戶傳入的音頻內容進行解析,將其轉寫爲相應的文本內容。
  • NLP自然語言理解
    • 根據用戶傳入的文字內容進行詞義及語義分析,幷進行有效的理解和拓展,進一步反饋用戶預期的文本內容。
  • 多音字處理
    • 根據用戶傳入的文字內容進行多音字檢索,反饋給用戶可能出現的多音字以及對應的發音備選。
  • 音色遷移
    • 根據用戶傳入的音頻內容以及指定的音色,將原音頻內容遷移至對應的音色合成後返回結果音頻。

# API說明

用戶調用平臺全部API服務,皆需要訪問服務接入點:aigc.softsugar.com,幷在請求頭中加上token信息。

# TTS語言檢測

# 接口描述

根據用戶傳入的文本內容識別所屬的語言,幷返回對應的language code。

# 請求地址

POST /api/voice/v1/nlp/language

# 請求參數

字段 類型 必填 描述
query String True 文本內容

# 請求樣例

{
    "query": "待合成語音的文本內容xxxxxx"
}

# 響應元素

字段 類型 描述
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.result String 語言代碼,參考標準 ISO 639-1 (opens new window). 目前支持檢測:af, am, an, ar, as, az, be, bg, bn, br, bs, ca, cs, cy, da, de, dz, el, en, eo, es, et, eu, fa, fi, fo, fr, ga, gl, gu, he, hi, hr, ht, hu, hy, id, is, it, ja, jv, ka, kk, km, kn, ko, ku, ky, la, lb, lo, lt, lv, mg, mk, ml, mn, mr, ms, mt, nb, ne, nl, nn, no, oc, or, pa, pl, ps, pt, qu, ro, ru, rw, se, si, sk, sl, sq, sr, sv, sw, ta, te, th, tl, tr, ug, uk, ur, vi, vo, wa, xh, zh, zu

# 響應樣例

case1:請求成功

{
    "code": 0,
    "message": "ok",
    "data": {
        "status": 0,
        "result": "zh"
    }
}

# TTS語言校驗(Qid)

# 接口描述

根據用戶傳入的文本內容以及語言、QID,判斷各元素之間是否匹配,幷返回檢測結果的language code。

# 請求地址

POST /api/voice/v3/tts/validate

# 請求參數

字段 類型 必填 描述
query String True 文本內容
qid String True 音色-Qid
ssml Boolean False 是否使用SSML,默認爲否

# 請求樣例

{
    "query": "待合成語音的文本內容xxxxxx",
    "qid": "AEBEvMy850Y_Z10Mqp9GUwDGHMSi0tS_TMr8xMyI3Tzk3QyqsK"
}

# 響應元素

字段 類型 描述
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.result String 校驗結果
data.result.valid Boolean 是否匹配
data.result.language String 檢測到的語言代碼,參考標準 ISO 639-1 (opens new window). 目前支持檢測:af, am, an, ar, as, az, be, bg, bn, br, bs, ca, cs, cy, da, de, dz, el, en, eo, es, et, eu, fa, fi, fo, fr, ga, gl, gu, he, hi, hr, ht, hu, hy, id, is, it, ja, jv, ka, kk, km, kn, ko, ku, ky, la, lb, lo, lt, lv, mg, mk, ml, mn, mr, ms, mt, nb, ne, nl, nn, no, oc, or, pa, pl, ps, pt, qu, ro, ru, rw, se, si, sk, sl, sq, sr, sv, sw, ta, te, th, tl, tr, ug, uk, ur, vi, vo, wa, xh, zh, zu

# 響應樣例

case1:請求成功

{
    "code": 0,
    "message": "ok",
    "data": {
        "status": 0,
        "result": {
            "valid": true,
            "language": "zh"
        }
    }
}

# TTS語言校驗(舊)

注:該接口目前處理維護狀態,不在更新新功能。建議使用Qid接口。

# 接口描述

根據用戶傳入的文本內容以及語言、音色、供應商ID,判斷各元素之間是否匹配,幷返回檢測結果的language code。

# 請求地址

POST /api/voice/v1/tts/validate

# 請求參數

字段 類型 必填 描述
query String True 文本內容
voice_id String True 音色ID
language String True 語言,支持 BCP47 (opens new window).格式,如 "en-US"、"zh-CN"
vendor_id Integer True 供應商ID
ssml Boolean False 是否使用SSML

# 請求樣例

{
     "query": "待合成語音的文本內容xxxxxx",
    "voice_id": "xiaoling",
    "language": "zh-CN",
    "vendor_id": 3
}

# 響應元素

字段 類型 描述
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.result String 校驗結果
data.result.valid Boolean 是否匹配
data.result.language String 檢測到的語言代碼,參考標準 ISO 639-1 (opens new window). 目前支持檢測:af, am, an, ar, as, az, be, bg, bn, br, bs, ca, cs, cy, da, de, dz, el, en, eo, es, et, eu, fa, fi, fo, fr, ga, gl, gu, he, hi, hr, ht, hu, hy, id, is, it, ja, jv, ka, kk, km, kn, ko, ku, ky, la, lb, lo, lt, lv, mg, mk, ml, mn, mr, ms, mt, nb, ne, nl, nn, no, oc, or, pa, pl, ps, pt, qu, ro, ru, rw, se, si, sk, sl, sq, sr, sv, sw, ta, te, th, tl, tr, ug, uk, ur, vi, vo, wa, xh, zh, zu

# 響應樣例

case1:請求成功

{
    "code": 0,
    "message": "ok",
    "data": {
        "status": 0,
        "result": {
            "valid": true,
            "language": "zh"
        }
    }
}

# Voice ID 遷移至 QID

# 接口描述

主動遷移已有的 Voice ID 表示的舊音色至 Qid 表示的新音色,幷返回對應的 Qid 取值,建議對 Qid 進行存儲,用于後續推理請求。

# 請求地址

POST /api/voice/v3/tts/migrate

# 請求參數

字段 類型 必填 描述
voice_id String True 需要進行轉換的音色id

# 請求樣例

{
  "voice_id": "xiaoning"
}

# 響應元素

字段 類型 描述
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.result String Qid,表示預配置 Qid。此字段的長度較長,建議以 VARCHAR(512) 類型進行存儲

# 響應樣例

{
  "code": 0,
  "message": "ok",
  "data": {
    "status": 0,
    "result": "JQb7Qv:AEA_Z10Mqp9GYwDGdLzMvPzEzIqwo"
  }
}

# QID詳情接口

# 接口描述

獲取QID的詳細信息,獲取該音色支持調節的參數細節。

# 請求地址

GET /api/voice/v3/tts/qid/{qid}

# 請求參數

字段 類型 必填 描述
qid String True 待請求詳細情况的QID

# 請求樣例

  https://domain/api/voice/v3/tts/qid/mwvA2f:AEBEvMy850Y_Z10Mqp9GUwTMr8xMyI3Tzk3Q

# 響應元素

字段 類型 說明
code int code 碼
message string 狀態說明
data object 結果數據
 -status int 狀態,見狀態表
 -result object QID 詳情
  -pitch boolean 是否支持調節音調
  -speed boolean 是否支持調節語速
  -volume boolean 是否支持調節音量
  -phone boolean 是否支持返回音素
  -subtitle boolean 是否支持返回字幕、句級別時間戳、字級別時間戳
  -ussml object 是否支持使用 USSML 語法
   -break boolean USSML 停頓是否生效,即是否支持 <break> 標簽
   -phoneme string list USSML 指定讀音是否生效,即是否支持 <phoneme> 標簽。<pinyin><ipa>兩種標簽
   -sub boolean USSML 替換文本是否生效,即是否支持 <sub> 標簽
   -sayas string list USSML 指定朗讀方式是否生效,即是否支持 <say-as> 標簽。<cardinal><digit><phone><address><date><clock>六種標簽
  -languages string list 支持的語言列表

# 響應樣例

{
  "code": 0,
  "message": "ok",
  "data": {
    "status": 0,
    "result": {
      "pitch": true,
      "speed": true,
      "volume": true,
      "phone": true,
      "subtitle": true,
      "ussml": {
        "break": true,
        "phoneme": ["pinyin"],
        "sub": true,
        "sayas": ["cardinal", "digit", "phone", "address", "date", "clock"]
      },
      "languages": [
        "zh-CN",
        "en-US"
      ]
    }
  }
}

# 發起TTS請求(Qid)

# 接口描述

根據用戶選擇的發音人音色結合傳入的文本內容將文本朗讀出來,支持調節朗讀聲音的音調,語速和音量。

# 請求地址

POST /api/voice/v3/tts/request

# 請求參數

字段 類型 必填 描述
qid String True 發音人Qid
query String True 待合成語音的文本內容
ssml Boolean False 是否使用USSML
phoneme Boolean False 是否需要返回音素文件URL
timeout Integer False 等待返回的超時時間,單位爲ms。如在超時時間內返回,直接返回TTS結果,否則返回 request_id
pitch_offset Float False 語調,數值越大越尖銳,越低越低沉,支持範圍 [-60, 60];默認0
speed_ratio Float False 語速,數值越大語速越慢,支持範圍 [0.5, 2];默認1.0
volume Integer False 音量,數值越大聲音越大,支持範圍 [1, 400];默認100
subtitle_max_length Integer False 每行字幕最大長度,默認爲0,即不限制長度
subtitle_cut_by_punc Boolean False 是否根據標點符號對字幕進行切分換行,默認爲false,即不切分
word_time Boolean False 是否返回字級別時間戳,默認爲false,即不返回

# 請求樣例

{
    "qid": "AEBEvMy850Y_Z10Mqp9GUwDGHMSi0tS_TMr8xMyI3Tzk3QyqsK",
    "query": "待合成語音的文本內容xxxxxx",
    "phoneme": true,
    "timeout": 3000,
    "word_time": true,
    "pitch_offset": 0.0,
    "speed_ratio": 1.0,
    "volume": 100
}

# 響應元素

字段 類型 描述
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.request_id String 請求ID
data.result Object TTS合成結果,如在超時時間內返回,返回此字段否則此字段爲空{}
data.result.audio_url String TTS合成音頻MP3文件URL
data.result.srt_url String TTS音頻字幕SRT文件URL
data.result.phone_url String TTS音頻音素文件URL
data.result.duration_ms Integer TTS合成音頻MP3文件音頻時長,單位爲 ms
data.result.word_times List TTS音頻字文件字級別時間戳 ,單位爲 ms
data.result.word_times.begin_ms Integer TTS音頻文件字開始時間戳,單位爲 ms
data.result.word_times.end_ms Integer TTS音頻文件字結束時間戳,單位爲 ms
data.result.word_times.text String TTS音頻文件字文本內容

# 響應樣例

case1:請求超時

{
    "code": 0,
    "message": "created",
    "data": {
       "status":1000,
       "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
       "result": {}
    }
}

case2:請求未超時,請求成功

{
    "code": 0,
    "message": "ok",
    "data": {
        "status":0,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": {
            "audio_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.mp3",
            "srt_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.srt",
            "phone_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.phone",
            "duration_ms": 1000,
            "word_times": [
        {
          "begin_ms": 2080,
          "end_ms": 2560,
          "text": "字"
        },
        {
          "begin_ms": 2560,
          "end_ms": 3040,
          "text": "級"
        },
        {
          "begin_ms": 3040,
          "end_ms": 3520,
          "text": "別"
        },
        {
          "begin_ms": 3520,
          "end_ms": 4000,
          "text": "時"
        },
        {
          "begin_ms": 4000,
          "end_ms": 4480,
          "text": "間"
        },
        {
          "begin_ms": 4480,
          "end_ms": 4960,
          "text": "戳"
        }  ]
       }
    }
}

# 發起TTS請求(舊)

注:該接口目前處理維護狀態,不在更新新功能。建議使用Qid接口。

# 接口描述

根據用戶選擇的發音人音色結合傳入的文本內容將文本朗讀出來,支持調節朗讀聲音的音調,語速和音量。需要注意所有語言的發音人都可以合成英文文本;所有語言的發音人都可以合成自己語言的文本;粵語、滬語等中文方言發音人可以合成中文文本。

# 請求地址

POST /api/voice/v1/request/tts

# 請求參數

字段 類型 必填 描述
voice_id String True 發音人ID
language String False 語言
query String True 待合成語音的文本內容
ssml Boolean False 是否使用SSML
phoneme Boolean False 是否需要返回音素文件URL
timeout Integer False 等待返回的超時時間,單位爲ms。如在超時時間內返回,直接返回TTS結果,否則返回 request_id
pitch_offset Float False 語調,數值越大越尖銳,越低越低沉,支持範圍 [-60, 60];默認0
speed_ratio Float False 語速,數值越大語速越慢,支持範圍 [0.5, 2];默認1.0
volume Integer False 音量,數值越大聲音越大,支持範圍 [1, 400];默認100
subtitle_max_length Integer False 每行字幕最大長度,默認爲0,即不限制長度
subtitle_cut_by_punc Boolean False 是否根據標點符號對字幕進行切分換行,默認爲false,即不切分
word_time Boolean False 是否返回字級別時間戳,默認爲false,即不返回

# 請求樣例

{
    "voice_id": "xiaoling",
    "query": "待合成語音的文本內容xxxxxx",
    "phoneme": true,
    "timeout": 3000,
    "word_time": true,
    "pitch_offset": 0.0,
    "speed_ratio": 1.0,
    "volume": 100
}

# 響應元素

字段 類型 描述
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.request_id String 請求ID
data.result Object TTS合成結果,如在超時時間內返回,返回此字段否則此字段爲空{}
data.result.audio_url String TTS合成音頻MP3文件URL
data.result.srt_url String TTS音頻字幕SRT文件URL
data.result.phone_url String TTS音頻音素文件URL
data.result.duration_ms Integer TTS合成音頻MP3文件音頻時長,單位爲 ms
data.result.word_times List TTS音頻字文件字級別時間戳 ,單位爲 ms
data.result.word_times.begin_ms Integer TTS音頻文件字開始時間戳,單位爲 ms
data.result.word_times.end_ms Integer TTS音頻文件字結束時間戳,單位爲 ms
data.result.word_times.text String TTS音頻文件字文本內容

# 響應樣例

case1:請求超時

{
    "code": 0,
    "message": "created",
    "data": {
       "status":1000,
       "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
       "result": {}
    }
}

case2:請求未超時,請求成功

{
    "code": 0,
    "message": "ok",
    "data": {
        "status":0,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": {
            "audio_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.mp3",
            "srt_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.srt",
            "phone_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.phone",
            "duration_ms": 1000,
            "word_times": [
        {
          "begin_ms": 2080,
          "end_ms": 2560,
          "text": "字"
        },
        {
          "begin_ms": 2560,
          "end_ms": 3040,
          "text": "級"
        },
        {
          "begin_ms": 3040,
          "end_ms": 3520,
          "text": "別"
        },
        {
          "begin_ms": 3520,
          "end_ms": 4000,
          "text": "時"
        },
        {
          "begin_ms": 4000,
          "end_ms": 4480,
          "text": "間"
        },
        {
          "begin_ms": 4480,
          "end_ms": 4960,
          "text": "戳"
        }  ]
       }
    }
}

# TTS狀態查詢(Qid)

# 接口描述

根據輸入參數返回指定TTS請求的當前狀態。

# 請求地址

POST /api/voice/v3/tts/result

# 請求參數

字段 類型 必填 描述
request_id String True 請求ID

# 請求樣例

{
    "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7"
}

# 響應參數

字段 類型 描述
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.request_id String 請求ID
data.result Object TTS合成結果,如在超時時間內返回,返回此字段否則此字段爲空{}
data.result.audio_url String TTS合成音頻MP3文件URL
data.result.srt_url String TTS音頻字幕SRT文件URL
data.result.phone_url String TTS音頻音素文件URL
data.result.duration_ms Integer TTS合成音頻MP3文件音頻時長,單位爲 ms
data.result.word_times List TTS音頻字文件字級別時間戳 ,單位爲 ms
data.result.word_times.begin_ms Integer TTS音頻文件字開始時間戳,單位爲 ms
data.result.word_times.end_ms Integer TTS音頻文件字結束時間戳,單位爲 ms
data.result.word_times.text String TTS音頻文件字文本內容

# 響應樣例

case1:還在處理

{
    "code": 0,
    "message": "created",
    "data": {
        "status":1000,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": {}
    }
}

case2: 已處理完畢

{
    "code": 0,
    "message": "ok",
    "data": {
        "status":0,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": {
            "audio_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.mp3",
            "srt_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.srt",
            "phone_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.phone",
            "duration_ms": 1000,
            "word_times": [
        {
          "begin_ms": 2080,
          "end_ms": 2560,
          "text": "字"
        },
        {
          "begin_ms": 2560,
          "end_ms": 3040,
          "text": "級"
        },
        {
          "begin_ms": 3040,
          "end_ms": 3520,
          "text": "別"
        },
        {
          "begin_ms": 3520,
          "end_ms": 4000,
          "text": "時"
        },
        {
          "begin_ms": 4000,
          "end_ms": 4480,
          "text": "間"
        },
        {
          "begin_ms": 4480,
          "end_ms": 4960,
          "text": "戳"
        }  ]
       }
    }
}

# TTS狀態查詢(舊)

注:該接口目前處理維護狀態,不在更新新功能。建議使用Qid接口。

# 接口描述

根據輸入參數返回指定TTS請求的當前狀態。

# 請求地址

POST /api/voice/v1/result/tts

# 請求參數

字段 類型 必填 描述
request_id String True 請求ID

# 請求樣例

{
    "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7"
}

# 響應參數

字段 類型 描述
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.request_id String 請求ID
data.result Object TTS合成結果,如在超時時間內返回,返回此字段否則此字段爲空{}
data.result.audio_url String TTS合成音頻MP3文件URL
data.result.srt_url String TTS音頻字幕SRT文件URL
data.result.phone_url String TTS音頻音素文件URL
data.result.duration_ms Integer TTS合成音頻MP3文件音頻時長,單位爲 ms
data.result.word_times List TTS音頻字文件字級別時間戳 ,單位爲 ms
data.result.word_times.begin_ms Integer TTS音頻文件字開始時間戳,單位爲 ms
data.result.word_times.end_ms Integer TTS音頻文件字結束時間戳,單位爲 ms
data.result.word_times.text String TTS音頻文件字文本內容

# 響應樣例

case1:還在處理

{
    "code": 0,
    "message": "created",
    "data": {
        "status":1000,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": {}
    }
}

case2: 已處理完畢

{
    "code": 0,
    "message": "ok",
    "data": {
        "status":0,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": {
            "audio_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.mp3",
            "srt_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.srt",
            "phone_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.phone",
            "duration_ms": 1000,
            "word_times": [
        {
          "begin_ms": 2080,
          "end_ms": 2560,
          "text": "字"
        },
        {
          "begin_ms": 2560,
          "end_ms": 3040,
          "text": "級"
        },
        {
          "begin_ms": 3040,
          "end_ms": 3520,
          "text": "別"
        },
        {
          "begin_ms": 3520,
          "end_ms": 4000,
          "text": "時"
        },
        {
          "begin_ms": 4000,
          "end_ms": 4480,
          "text": "間"
        },
        {
          "begin_ms": 4480,
          "end_ms": 4960,
          "text": "戳"
        }  ]
       }
    }
}

# 發起ASR請求

# 接口描述

根據用戶傳入的音頻內容進行解析,將其轉寫爲相應的文本內容。

# 請求地址

POST /api/voice/v1/request/asr

# 請求參數

字段 類型 必填 描述
audio_url String True 待識別文本的音頻文件URL
timeout Integer False 等待返回的超時時間,單位爲ms。如在超時時間內返回,直接返回ASR結果,否則返回 request_id
subtitle_max_length Integer False 每行字幕最大長度,默認爲0,即不限制長度
subtitle_cut_by_punc Boolean False 是否根據標點符號對字幕進行切分換行,默認爲false,即不切分
word_time Boolean False 是否返回字級別時間戳,默認爲false,即不返回

# 請求樣例

{
    "audio_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.mp3",
    "timeout": 3000
}

# 響應元素

字段 類型 描述
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.request_id String 請求ID
data.result Object ASR請求結果,如在超時時間內返回,返回此字段否則此字段爲空{}
data.result.srt_url String ASR音頻字幕SRT文件URL
data.result.text String ASR識別結果
data.result.word_times List ASR音頻字文件字級別時間戳 ,單位爲 ms
data.result.word_times.begin_ms Integer ASR音頻文件字開始時間戳,單位爲 ms
data.result.word_times.end_ms Integer ASR音頻文件字結束時間戳,單位爲 ms
data.result.word_times.text String ASR音頻文件字文本內容

# 響應樣例

case1:請求超時

{
    "code": 0,
    "message": "created",
    "data": {
        "status":1000,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": {}
    }
}

case2:請求未超時,請求成功

{
    "code": 0,
    "message": "ok",
    "data": {
        "status":0,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": {
        "srt_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.srt",
        "text": "ASR識別結果",
        "word_times": [
        {
          "begin_ms": 2080,
          "end_ms": 2560,
          "text": "字"
        },
        {
          "begin_ms": 2560,
          "end_ms": 3040,
          "text": "級"
        },
        {
          "begin_ms": 3040,
          "end_ms": 3520,
          "text": "別"
        },
        {
          "begin_ms": 3520,
          "end_ms": 4000,
          "text": "時"
        },
        {
          "begin_ms": 4000,
          "end_ms": 4480,
          "text": "間"
        },
        {
          "begin_ms": 4480,
          "end_ms": 4960,
          "text": "戳"
        }  ]
        }
    }
}

# ASR狀態查詢

# 接口描述

根據輸入參數返回指定ASR請求的當前狀態。

# 請求地址

POST /api/voice/v1/result/asr

# 請求參數

字段 類型 必填 描述
request_id String True 請求ID

# 請求樣例

{
    "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7"
}

# 響應元素

字段 類型 說明
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.request_id String 請求ID
data.result Object ASR請求結果,如在超時時間內返回,返回此字段否則此字段爲空{}
data.result.srt_url String ASR音頻字幕SRT文件URL
data.result.text String ASR識別結果
data.result.word_times List ASR音頻字文件字級別時間戳 ,單位爲 ms
data.result.word_times.begin_ms Integer ASR音頻文件字開始時間戳,單位爲 ms
data.result.word_times.end_ms Integer ASR音頻文件字結束時間戳,單位爲 ms
data.result.word_times.text String ASR音頻文件字文本內容

# 響應樣例

case1:請求超時

{
    "code": 0,
    "message": "created",
    "data": {
        "status":1000,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": {}
    }
}

case2:請求未超時,請求成功

{
    "code": 0,
    "message": "ok",
    "data": {
        "status":0,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": {
            "srt_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.srt",
            "text": "ASR識別結果",
            "word_times": [
        {
          "begin_ms": 2080,
          "end_ms": 2560,
          "text": "字"
        },
        {
          "begin_ms": 2560,
          "end_ms": 3040,
          "text": "級"
        },
        {
          "begin_ms": 3040,
          "end_ms": 3520,
          "text": "別"
        },
        {
          "begin_ms": 3520,
          "end_ms": 4000,
          "text": "時"
        },
        {
          "begin_ms": 4000,
          "end_ms": 4480,
          "text": "間"
        },
        {
          "begin_ms": 4480,
          "end_ms": 4960,
          "text": "戳"
        }  ]
        }
    }
}

# 發起多音字請求

# 接口描述

根據輸入參數返回文本中是否包含多音字以及多音字對應的可選擇發音。

# 請求地址

POST /api/voice/v1/request/polyphony

# 請求參數

字段 類型 必填 說明
query String True 請求文本
format string false 返回格式,支持 “pinyin” 和 “bopomofo”,默認爲 “pinyin”
timeout Integer False 等待返回的超時時間,單位爲ms。如在超時時間內返回,直接返回多音字結果,否則返回 request_id

# 請求樣例

{
    "query": "待合成語音的文本內容xxxxxx",
    "timeout": 3000
}

# 響應元素

字段 類型 說明
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.request_id String 請求ID
data.result Object List 多音字請求結果,如在超時時間內返回,返回此字段,否則此字段爲空{}
data.result.text String 多音字文本
data.result.polyphony String List 多音字的可選發音,推薦讀音在前,候選讀音在後
data.result.polyphony_assist List of String list 多音字的可選發音拼音及對應注音,推薦讀音在前,候選讀音在後。僅當 format 爲 bopomofo 時返回

# 響應樣例

case1:請求超時

{
    "code": 0,
    "message": "created",
    "data": {
       "status":1000,
       "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
       "result": []
    }
}

case2:請求未超時,請求成功

{
    "code": 0,
    "message": "ok",
    "data": {
        "status":0,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": [
            {
                "text":"待",
                "polyphony":["dai4","dai1"]
            },
            {
                "text":"的",
                "polyphony":["de5","di4","di1","di2"]
            }
        ]
    }
}

case3:請求注音,未超時成功


{
    "code": 0,
    "data": {
        "request_id": "66d043c7-adbd-4a12-a52e-aa7c3c226a05",
        "result": [
            {
                "polyphony": [
                    "lv4",
                    "lu4"
                ],
                "polyphony_assist": [
                    ["lv4", "ㄌㄩˋ"],
                    ["lu4", "ㄌㄨˋ"]                    
                ],
                "text": "綠"
            },
            {
                "polyphony": [
                    "le5",
                    "liao3"
                ],
                "polyphony_assist": [
                    ["le5", "˙ㄌㄜ"],
                    ["liao3", "ㄌㄧㄠˇ"]
                ],
                "text": "了"
            }
        ],
        "status": 0
    },
    "message": "ok"
}

# 多音字狀態查詢

# 接口描述

根據輸入參數返回指定多音字請求的當前狀態。

# 請求地址

POST /api/voice/v1/result/polyphony

# 請求參數

字段 類型 必填 說明
request_id String True 請求ID

# 請求樣例

{
    "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7"
}

# 響應元素

字段 類型 說明
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.request_id String 請求ID
data.result Object List 多音字請求結果,如在超時時間內返回,返回此字段,否則此字段爲空{}
data.result.text String 多音字文本
data.result.polyphony String List 多音字的可選發音,推薦讀音在前,候選讀音在後
data.result.polyphony_assist List of String list 多音字的可選發音拼音及對應注音,推薦讀音在前,候選讀音在後。僅當 format 爲 bopomofo 時返回

# 響應樣例

case1:還在處理

{
    "code": 0,
    "message": "created",
    "data": {
        "status":1000,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": []
    }
}

case2:處理完畢

{
    "code": 0,
    "message": "ok",
    "data": {
        "status":0,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": [
            {
                "text":"待",
                "polyphony":["dai4","dai1"]
            },
            {
                "text":"的",
                "polyphony":["de5","di4","di1","di2"]
            }
        ]
    }
}

case3:請求注音,成功

{
    "code": 0,
    "data": {
        "request_id": "66d043c7-adbd-4a12-a52e-aa7c3c226a05",
        "result": [
            {
                "polyphony": [
                    "lv4",
                    "lu4"
                ],
                "polyphony_assist": [
                    ["lv4", "ㄌㄩˋ"],
                    ["lu4", "ㄌㄨˋ"]                    
                ],
                "text": "綠"
            },
            {
                "polyphony": [
                    "le5",
                    "liao3"
                ],
                "polyphony_assist": [
                    ["le5", "˙ㄌㄜ"],
                    ["liao3", "ㄌㄧㄠˇ"]
                ],
                "text": "了"
            }
        ],
        "status": 0
    },
    "message": "ok"
}

# 發起合成唱歌音頻請求

# 接口描述

根據輸入的唱歌音頻,唱歌音頻屬性,指定的唱歌音色id,返回新的清唱的唱歌音頻及背景音樂。

# 請求地址

POST /api/voice/v3/svc/request

# 請求參數

字段 類型 必填 說明
audio_url String True 原始唱歌音頻url
sid String True 唱歌音色id
with_bgm Boolean False 音頻文件是否包含背景音樂,如包含背景音樂,將進行聲源分離,幷分別返回轉換後的幹音與背景音樂
pitch Integer False 音高,數值越大越尖銳,越小越低沉,支持範圍 [-12, 12];默認0
timeout Integer False 同步等待任務完成的時間,單位爲ms。如任務在時限內完成,直接返回結果,否則返回 request_id

# 請求樣例

{
    "audio_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.mp3",
  	"sid": "sid1",
  	"with_bgm": true,
  	"pitch": 0,
  	"timeout": 0
}

# 響應元素

字段 類型 說明
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.request_id String 請求ID
data.result String 結果音頻,如任務在超時時間內完成,返回此字段,否則此字段爲空{}
data.result.vocal_track_url String SVC 結果音頻文件 URL
data.result.original_instrumental_track_url String 聲源分離後的背景音樂文件 URL,僅當 with_bgm 爲 true 時返回
data.result.original_vocal_track_url String 聲源分離後的原始人聲文件 URL,僅當 with_bgm 爲 true 時返回
data.result.original_reverb_url String 聲源分離後的混響文件 URL,僅當 with_bgm 爲 true 時返回

# 響應樣例

case1:請求超時

{
    "code": 0,
  	"message": "created",
  	"data": {
    "status": 1000,
    "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
    "result": {}
  }
}

case2:請求未超時,請求成功

{
    "code": 0,
 	"message": "ok",
  	"data": {
    "status": 0,
    "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
    "result": {
      "vocal_track_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.mp3",
      "original_instrumental_track_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1_acc.mp3",
      "original_vocal_track_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1_vocal.mp3",
      "original_reverb_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1_reverb.mp3"
    }
  }
}

# 合成唱歌音頻狀態查詢

# 接口描述

根據輸入參數返回指定合成唱歌音頻請求的當前狀態。

# 請求地址

POST /api/voice/v3/svc/result

# 請求參數

字段 類型 必填 說明
request_id String True 請求ID

# 請求樣例

{
    "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7"
}

# 響應元素

字段 類型 說明
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.request_id String 請求ID
data.result String 翻譯請求結果,如在超時時間內返回,返回此字段,否則此字段爲空{}
data.result.vocal_track_url String SVC 結果音頻文件 URL
data.result.original_instrumental_track_url String 聲源分離後的背景音樂文件 URL,僅當 with_bgm 爲 true 時返回
data.result.original_vocal_track_url String 聲源分離後的原始人聲文件 URL,僅當 with_bgm 爲 true 時返回
data.result.original_reverb_url String 聲源分離後的混響文件 URL,僅當 with_bgm 爲 true 時返回

# 響應樣例

case1:還在處理

{
  "code": 0,
  "message": "created",
  "data": {
    "status": 1000,
    "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
    "result": {}
  }
}

case2:處理完畢

{
  "code": 0,
  "message": "ok",
  "data": {
    "status": 0,
    "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
    "result": {
      "vocal_track_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1.mp3",
      "original_instrumental_track_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1_acc.mp3",
      "original_vocal_track_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1_vocal.mp3",
      "original_reverb_url": "https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/audio1_reverb.mp3"
    }
  }
}

# 發起翻譯請求(暫不支持)

# 接口描述

根據輸入的文本以及指定的目標語言,返回翻譯後的文本內容。

# 請求地址

POST /api/voice/v1/request/translate

# 請求參數

字段 類型 必填 說明
query String True 需要翻譯的文本,要求在20萬字符以內
to String True 輸出的文本語言代碼,支持語言列表見下表
timeout Integer False 等待返回的超時時間,單位爲ms。如在超時時間內返回,直接返回翻譯結果,否則返回 request_id

# 語言列表

語言 語言代碼
阿爾巴尼亞語 sq
阿拉伯語 ar
亞美尼亞語 hy
阿塞拜疆語(拉丁語) az
保加利亞語 bg
粵語(繁體) yue
簡體中文 zh-Hans
克羅地亞語 hr
捷克語 cs
丹麥語 da
荷蘭語 nl
英語 en
愛沙尼亞語 et
菲律賓語 fil
芬蘭語 fi
法語 fr
格魯吉亞語 ka
德語 de
希臘語 el
希伯來語 he
匈牙利語 hu
冰島語 is
印度尼西亞語 id
愛爾蘭語 ga
意大利語 it
日語 ja
哈薩克語 kk
朝鮮語 ko
拉脫維亞語 lv
立陶宛語 lt
馬來語(拉丁語系) ms
緬甸 my
尼泊爾語 ne
挪威語 nb
波斯語 fa
波蘭語 pl
葡萄牙語 pt-pt
羅馬尼亞語 ro
俄語 ru
斯洛伐克語 sk
斯洛文尼亞語 sl
西班牙語 es
瑞典語 sv
泰語 th
藏語 bo
土耳其語 tr
土庫曼語(拉丁語) tk
烏克蘭語 uk
維吾爾語(阿拉伯語) ug
烏茲別克語(拉丁文) uz
越南語 vi

# 請求樣例

{
    "query": "待翻譯的文本內容xxxxxx",
    "to": "en",
    "timeout": 3000
}

# 響應元素

字段 類型 說明
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.request_id String 請求ID
data.result String 翻譯請求結果,如在超時時間內返回,返回此字段,否則此字段爲空{}

# 響應樣例

case1:請求超時

{
    "code": 0,
    "message": "created",
    "data": {
       "status":1000,
       "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
       "result": []
    }
}

case2:請求未超時,請求成功

{
    "code": 0,
    "message": "ok",
    "data": {
        "status":0,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": "The text to translate"
    }
}

# 翻譯狀態查詢(暫不支持)

# 接口描述

根據輸入參數返回指定翻譯請求的當前狀態。

# 請求地址

POST /api/voice/v1/result/translate

# 請求參數

字段 類型 必填 說明
request_id String True 請求ID

# 請求樣例

{
    "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7"
}

# 響應元素

字段 類型 說明
code Integer code碼,見狀態表
message String 狀態說明
data Object 結果數據
data.status Integer 狀態,見狀態表
data.request_id String 請求ID
data.result String 翻譯請求結果,如在超時時間內返回,返回此字段,否則此字段爲空{}

# 響應樣例

case1:還在處理

{
    "code": 0,
    "message": "created",
    "data": {
        "status":1000,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": ""
    }
}

case2:處理完畢

{
    "code": 0,
    "message": "ok",
    "data": {
        "status":0,
        "request_id": "99c3f13f-c2b7-4388-91ff-8f3244d2c5b7",
        "result": "The text to translate"
    }
}

# 狀態表

# 語言檢測相關狀態

# TTS語言檢測請求響應狀態
code 說明
0 成功
x 失敗
status 說明
0 處理成功
3201 拒絕:必填參數缺失
3202 拒絕:非法的參數--請求文本爲空
3301 請求失敗:未能檢測到語言

# 語言校驗相關狀態

# TTS語言校驗請求響應狀態
code 說明
0 成功
x 失敗
status 說明
0 處理成功
1201 拒絕:必填參數缺失
1202 拒絕:非法的參數--音色ID爲空
1203 拒絕:非法的參數--請求文本爲空
1204 拒絕:非法的參數--語言爲空
1205 拒絕:非法的參數--音色ID不存在
1206 拒絕:非法的參數--未知的語言
1207 拒絕:非法的參數--未知的供應商
1301 請求失敗:未能檢測到語言

# TTS相關狀態

# TTS請求響應狀態
code 說明
0 成功
x 失敗
status 說明
0 處理成功
1000 處理中
1002 拒絕:必填參數缺失
1003 拒絕:非法的參數--發音人爲空
1004 拒絕:非法的參數--合成文本爲空
1005 拒絕:非法的參數--發音人不存在
1102 請求失敗,未超時:未連接到服務
1103 請求失敗,未超時:繁忙
1104 請求失敗,未超時:內部錯誤
1105 請求失敗,未超時:請求超時
# TTS請求查詢狀態
code 說明
0 成功
x 失敗
status 說明
0 成功
1000 處理中
1102 失敗:未連接到服務
1103 失敗:繁忙
1104 失敗:內部錯誤
1105 失敗:請求超時
1106 失敗:未知的request ID

# ASR相關狀態

# ASR請求響應狀態
code 說明
0 成功
x 失敗
status 說明
0 請求成功
1000 請求超時,已創建了新請求
2001 拒絕:必填參數缺失
2002 拒絕:非法的參數--音頻URL爲空
2102 請求失敗,未超時:未連接到服務
2103 請求失敗,未超時:繁忙
2104 請求失敗,未超時:內部錯誤
2105 請求失敗,未超時:請求超時
2106 請求失敗,未超時:下載音頻錯誤
# ASR請求查詢狀態
code 說明
0 成功
x 失敗
status 說明
0 成功
1000 處理中
2102 失敗:未連接到服務
2103 失敗:繁忙
2104 失敗:內部錯誤
2105 失敗:請求超時
2106 失敗:下載音頻錯誤
2107 失敗:未知的request ID

# 多音字相關狀態

# 多音字請求響應狀態
code 說明
0 成功
x 失敗
status 說明
0 處理成功
1000 處理中
5002 拒絕:必填參數缺失
5004 拒絕:非法的參數--合成文本爲空
5102 請求失敗,未超時:未連接到服務
5103 請求失敗,未超時:繁忙
5104 請求失敗,未超時:內部錯誤
5105 請求失敗,未超時:請求超時
# 多音字請求查詢狀態
code 說明
0 成功
x 失敗
status 說明
0 成功
1000 處理中
5102 失敗:未連接到服務
5103 失敗:繁忙
5104 失敗:內部錯誤
5105 失敗:請求超時
5106 失敗:未知的request ID

# 翻譯相關狀態

# 翻譯請求響應狀態
code 說明
0 成功
x 失敗
status 說明
0 請求成功
1000 處理中
3401 拒絕:必填參數缺失
3402 拒絕:非法的參數--請求文本爲空
3403 拒絕:非法的參數--輸出語言爲空
3404 拒絕:非法的參數--翻譯文本超過20w字
3501 請求失敗,內部錯誤
3502 請求失敗,請求超時
# 音色遷移請求響應狀態
code 說明
0 成功
x 失敗
status 說明
0 處理成功
1000 處理中
1401 拒絕:必填參數缺失
1402 拒絕:非法的參數--音頻 URL 爲空
1403 拒絕:非法的參數--vc_id 不存在
1404 拒絕:非法的參數--音頻時長超過10分鐘
1502 請求失敗:未連接到VC服務
1503 請求失敗:VC服務內部錯誤
1504 請求失敗:請求超時
1505 請求失敗:下載音頻錯誤
1506 請求失敗:音頻格式錯誤
# 音色遷移請求查詢狀態
code 說明
0 成功
x 失敗
status 說明
0 成功
1000 處理中
1404 拒絕:非法的參數--音頻時長超過10分鐘
1502 失敗:未連接到VC服務
1503 失敗:VC服務內部錯誤
1504 失敗:請求超時
1505 失敗:下載音頻錯誤
1506 失敗:音頻格式錯誤
1507 失敗:未知的request ID
# 翻譯請求查詢狀態
code 說明
0 成功
x 失敗
status 說明
0 成功
1000 處理中
3501 失敗:內部錯誤
3502 失敗:請求超時
3503 失敗:未知的request ID

# USSML語法說明

# 介紹

USSML(Unified Speech Synthesis Markup Language)旨在提供統一的 SSML(Speech Synthesis Markup Language)語法格式。USSML支持最常用的幾個SSML標簽:停頓、指定讀音、替換合成文本和指定朗讀方式,可以滿足大部分的語音合成需求。

# 使用方式

# 語法格式

USSML 語法格式如下:

<speak sttts:version="0.1">
    <break time="string" />
    <phoneme ph="string"></phoneme>
    <sub alias="string"></sub>
    <say-as interpret-as="string"></say-as>
</speak>

標簽用于包裹其他子標簽外,剩餘標簽均不可嵌套使用。

# 特殊字符

在 USSML 中,如果使用了以下的特殊字符,需要進行轉義,如下表所示。對于 USSML 標記本身的相關字符,則無需轉義。

補充轉譯的例子。

特殊字符 轉義字符
& &amp;
< &lt;
> &gt;
" &quot;
' &apos;
# 標簽說明
# <speak>

<speak> 標簽是 USSML 的根標簽,用于包裹所有的 USSML 標簽。

屬性 sttts:version 用于指定 USSML 的版本號,目前 USSML 的版本號爲 0.1

<speak sttts:version="0.1">
    <!-- USSML 標簽 -->
</speak>
# <break>

<break> 標簽用于指定停頓,其 time 屬性用于指定停頓的時長。time 屬性的值是一個字符串,單位爲秒或毫秒。停頓的最大時長爲5秒。不可以傳輸純數字,需要有單位。例如:

<break time="5s" />

<break time="5000ms" />
# <phoneme>

<phoneme> 標簽用于指定讀音,其 ph 屬性用于指定讀音的內容。由于不同供應商支持語言範圍不同,目前 USSML 中的 <phoneme> 僅支持漢語拼音。拼音用法:字與字的拼音用空格分隔,拼音的數目必須與字數相等。每個拼音由發音和音調組成,音調爲1~5的數字編號,其中”5”表示輕聲。例如:

<phoneme ph="mai2 mo4">埋沒</phoneme>
# 示例
<speak sttts:version="0.1">
    你說<phoneme ph="bo2"></phoneme><break time="500ms" />
    我說<phoneme ph="bao2"></phoneme></speak>
# <sub>

<sub> 標簽用于在合成過程中替換字幕文本。該標簽的 ‘alias’ 屬性用于指定要替換的文本內容。合成時,‘alias’ 屬性所包含的文本將會取代原始文本進行合成,若有字幕,字幕內容爲標簽內的原始文本。

<sub> 標簽內容與 ‘alias’ 屬性的文本均不得爲空。

例如:

<sub alias="World Wide Web Consortium">W3C</sub>

以上例子中,字幕顯示爲:W3C,朗讀內容爲:World Wide Web Consortium。

# <say-as>

<say-as>標簽允許您使用特定的朗讀方式來合成標簽內容。該標簽的 ‘interpret-as’ 屬性用于指定朗讀方式。不同的供應商對相同的朗讀方式可能産生略微不同的結果。 interpret-as 屬性支持多種值,包括:

說明 樣例
cardinal 按照數值方式進行發音 “1487” 讀作 “一千四百八十七”
digit 按數字串發音 “12345” 讀作 “一二三四五”
phone 按電話號碼常用方式發音 “1301001155” 讀作 “么三零么零零么么五五”
address 按地址發音 “市台路388-301號” 讀作 “市台路三八八杠三零么號”
date 按日期發音 “1998-12-12” 讀作 “一九九八年十二月十二日”
clock 按時刻發音 “12:00:12” 讀作 “十二點零分十二秒”
# 示例
<say-as interpret-as="cardinal">12345</say-as>

示例 1:

<speak sttts:version="0.1">
    你說<phoneme ph="bo2"></phoneme><break time="500ms" />
    我說<phoneme ph="bao2"></phoneme></speak>

示例 2:

<speak sttts:version="0.1">
    <sub alias="World Wide Web Consortium">W3C</sub>
    是一個國際性的標準化組織。
</speak>

示例 3:

<speak sttts:version="0.1">
    <sub alias="青島啤酒">TsingTao</sub>
    用河南話說就是,
    <phoneme ph="qing2 dao1 pi4 jiu1">青島啤酒</phoneme><say-as interpret-as="cardinal">12345</say-as>
</speak>

以上即爲平臺提供的語音處理能力相關內容。

最後更新: 2025/2/5 下午5:54:45