快速入門
TTS(Text To Speech)是一個將文字轉換成近似人類的合成語音服務,就像是語者在朗讀這段文字或是說話一樣,本節將快速引導您合成一個TTS音檔
API 的服務位址為 https://publi-ttsapi-release-01.aicast.tech/cloud-tts-service ,輸入為 json 格式,需要以下欄位:
account: 取用服務的帳號 (帳號申請連結)
key: 取用服務的密碼
ssml: 欲合成的 ssml 文本,包含欲使用的語者 id,我們建議使用換行和句號適當分段文本,避免每個段落過長。
commaBreak: 自動在每個逗號與分號延長的停頓時間,單位為毫秒
periodBreak: 自動在每個句號、驚嘆號、與問號延長的停頓時間,單位為毫秒
sentenceBreak: 自動在每個換行延長的停頓時間,單位為毫秒
file_name: 合成音檔檔名,不需要寫附檔名
例如,以俐蓉作為語者,您的輸入可能像這樣:
{
"account": "您的帳號",
"key": "您的密碼",
"ssml": "我是俐蓉,歡迎使用雲端TTS服務",
"commaBreak": 0,
"periodBreak": 0,
"sentenceBreak": 0,
"file_name": "第一個TTS合成檔",
}
以 Post 形式呼叫 API,回傳內容請以mp3形式儲存。若回傳錯誤訊息,請調整後再試一次
SSML客製化選項
SSML (Speech Synthesis Markup Language) 是 TTS 服務合成語音使用的文本格式,每次合成 ssml 文本時,最前方必須是<speak><voice id=”語者代碼”> ,最後方必須是</voice></speak> ,它們必須剛好各出現一次,中間則是要合成的文字內容,例如:
內文可以中英文混搭,全形或半形的標點符號 都可,但為了降低錯誤發生機率,請盡可能避免在非標籤的內文內容中使用" < " 或 " >" 。
prosody 標籤
使用此標籤調整音檔的語速、音調、或是音量。
此時最前方必須是 <speak><voice id=”語者代碼”><prosody 屬性1="值1"...>,最後方必須是</prosody></voice></speak> ,如果想一次調整多個屬性,則不同屬性之間必須有空格。
以下說明這三個屬性:
speed: 語速調整值,正常語速為 1.0,1.5倍速為 1.5,以此類推,此值必須介於 0.8 到 2 之間
pitch: 音調調整值,正常音調為 0,單位為半音(Semitone)
volume: 音量調整值,正常音量為 0,單位為分貝(decibel,dB)
此為只調整語速的範例:
<speak><voice id=”bp1zhtwwo03dm2”><prosody speed=”1.2”>我趕時間,有話快說!</prosody></voice></speak>
也可以一次調整多個屬性,例如:
<speak><voice id=”bp1zhtwwo03dm2”><prosody pitch=”1” volume=”-2”>我的聲音又尖又小聲,就像妖精!</prosody></voice></speak>
破音字 phoneme 標籤
選擇一個中文字,前方加上 ,後方加上 ,就可指定該文字的發音。適合處理發音不正確的破音字。例如:
<speak><voice id=”bp1zhtwwo03dm2”>你能想像<phoneme alphabet="py" ph="ㄑㄧㄢˊ">乾</phoneme>隆吃<phoneme alphabet="py" ph="ㄍㄢ">乾</phoneme>拌麵的模樣嗎?</voice></speak>
上例中「乾隆」念作「ㄑㄧㄢˊ 隆」,「乾拌麵」念作 「ㄍㄢ 拌麵」,兩個「乾」字在指定讀音下有不同念法
break 停頓標籤
在文字之間插入,就能指定這裡沉默的時間,也可以加在標點後方延長該處的沉默時間,停頓時間的單位為毫秒,例如:
<speak><voice id=”bp1zhtwwo03dm2”>首先淺呼吸,現在深呼吸,<break time=”500ms”></break>現在你準備好了</voice></speak>
audio 音效標籤
在文字之間插入,就能在此處插入一個音檔,注意這個音檔網址必須是可公開存取的位置,例如:
<speak><voice id=”bp1zhtwwo03dm2”>聽他帶著嘲諷的笑聲,<audio src="https://shorturl.aicast.tech/11017MSSf"></audio>真的有點欠打</voice></speak>
規格與限制
-
單次請求的文本必須小於1000字元(包含所有SSML標籤,中文字及全形標點符號計算為3字元,每個半形符號算 1 字元)
-
單一帳號的流量限制為每分鐘20次請求,超額時可能發生無回應的情況。
-
TTS合成需要等待,單次請求10個中文字語音合成,回傳音檔的時間大約 1秒,100個中文字語音合成任務最快為 4秒,實際回傳時間會依照伺服器忙碌情況有所延遲。
-
請避免單次請求低於3個中文字,因技術限制,字數過少時很容易發生音頻變形的形況。
-
合成音檔的規格:
格式 : mp3
音頻採樣率 : 24000Hz
費率
1 使用GPU高效合成,簡短的文字可以立即完成。
2 每次語言合成任務需小於1000字元。
3 適合應用在AI客服/影片剪輯/語音導覽等產品。
1 150中文字的語音合成任務約10~60秒完成。
2 支援輸出長文本,每次語言合成任務需小於10萬字元。
3 適合運用在有聲書等產品的製作
說明 :
-
中文字/全形標點計算為3字元,英文字母/半形標點計算為1字元。
-
語者/語調/音量/語速/插入停頓/各種標點停頓延長/破音字/插入音效...等功能調整,均需以ssml語法標記,會消耗字元數(請參閱api文件)
-
新客戶可免費獲得20萬字元試用(效期3個月)
常見問答
VoAI API 是否支援串流 (Streaming)?
VoAI API 的生成速度?
使用 VOAI API 服務,在資安方面是否有保障?
常見問答

TTS API 串接
現在申請,即可獲得20萬字元的免費使用額度