語音合成服務 (TTS) 提供了一組 Web API,用於建立合成語音及取得合成語音,下列步驟將以命令列工具示範服務用法。

Step 1. 命令列工具

curl 是可以直接在命令列介面發送 HTTP 請求的工具程式,大多數 Linux 系統都已預設安裝。Windows 系統則可使用 PowerShell 提供的 Invoke-WebRequest 指令發送 HTTP 請求。

Step 2. 合成音檔

打開命令列視窗,輸入或複製以下指令執行:
curl -i -X POST \
--url http://api.udngroup.com/api/TextToSpeech \
 -H "Authorization: Basic {base64(username:password)}" \
 -H "Content-Type: application/json" \
 -H "Accept: application/json" \
 -H "api-version: 2.1" \
 --data"{ \"text\": \"這是要合成的文字。This is the input for text to speech\", \"speaker\": 0 }"
上述指令收到的回應如下,可由 Location 標頭拿到所合成音檔的端點,內容也有合成音檔的 audioId
HTTP/1.1 201 Created
... header omitted ...
Location: http://api.udngroup.com/api/TextToSpeech/51dddb2cb6ccaee67b8c4691d4fa09d4631c0f2f
api-supported-versions: 2.1
{"audioId":"51dddb2cb6ccaee67b8c4691d4fa09d4631c0f2f"}

註1:身份驗證採用 HTTP Basic Authentication

註2:API 2.1 支援中英夾雜

註3:speaker = 0 為 Rickie (男聲),speaker = 1 為 Rebecca (女聲)

Step 3. 取得音檔

在命令列輸入或複製以下指令,並代入上一步驟得到的 audioId
curl -X GET \
 --url http://api.udngroup.com/api/TextToSpeech/{audioId} \
 -H "Authorization: Basic {base64(username:password)}" \
 -H "Accept: audio/wav" \
 -H "api-version: 2.1" \
 -o {audioOutput}.wav