AutoIt
AutoIt
IBM Cloud - Text to Speech - Synthesize Audio (POST)
See more IBM Text to Speech Examples
Synthesizes text to audio that is spoken in the specified voice. Uses a POST which allows for more text to be synthesized.Chilkat AutoIt Downloads
Local $bSuccess = False
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
$oHttp = ObjCreate("Chilkat.Http")
$oHttp.Login = "apikey"
$oHttp.Password = "my_apikey"
$oHttp.BasicAuth = True
; Send the following request:
; curl -X POST -u "apikey:{apikey}"
; --header "Content-Type: application/json"
; --header "Accept: audio/wav"
; --data "{\"text\":\"When life gives you lemons, order the lobster tail.\"}"
; --output lobster.wav "{url}/v1/synthesize?voice=en-US_AllisonV3Voice"
; Use your base URL shown in the credentials web page (below your apikey)
Local $sMyBaseUrl = "https://api.us-south.text-to-speech.watson.cloud.ibm.com/instances/31941e96-7b89-4d56-8993-9cd8f18ec2d8"
$oSbUrl = ObjCreate("Chilkat.StringBuilder")
$oSbUrl.Append($sMyBaseUrl)
$oSbUrl.Append("/v1/synthesize?voice=en-US_AllisonV3Voice")
$oHttp.Accept = "audio/wav"
$oJson = ObjCreate("Chilkat.JsonObject")
$oJson.UpdateString("text","When life gives you lemons, order the lobster tail.")
Local $sUrl = $oSbUrl.GetAsString()
$oResp = ObjCreate("Chilkat.HttpResponse")
$bSuccess = $oHttp.HttpJson("POST",$sUrl,$oJson,"application/json",$oResp)
If ($bSuccess = False) Then
ConsoleWrite($oHttp.LastErrorText & @CRLF)
Exit
EndIf
Local $iRespStatusCode = $oResp.StatusCode
ConsoleWrite("response status code = " & $iRespStatusCode & @CRLF)
If ($iRespStatusCode = 200) Then
$bSuccess = $oResp.SaveBodyBinary("qa_output/lobster.wav")
ConsoleWrite("Success!" & @CRLF)
Else
ConsoleWrite($oResp.BodyStr & @CRLF)
EndIf