這篇文章主要介紹了PHP線上語音合成,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下
線上語音合成 PHP SDK
http://yuyin.baidu.com/docs/tts/194
PHP SDK文檔
簡介
Hi,您好,歡迎使用百度語音合成服務。
本文檔主要針對PHP開發人員,描述百度語音合成介面服務的相關技術內容。如果您對文檔內容有任何疑問,可以通過以下幾種方式聯絡我們:
介面能力
介面名稱 |
介面能力簡要描述 |
語音合成 |
將電腦自己產生的、或外部輸入的文字資訊轉變為可以聽得懂的、流利的口語輸出的技術。 |
注意事項
目前本SDK的功能同REST API,需要連網調用http介面 。REST API 僅支援最多512字(1024 位元組)的音頻合成,合成的檔案格式為mp3。 沒有其他額外功能。 如果需要使用離線合成等其它功能,請使用Android或者iOS 合成 SDK
請嚴格按照文檔裡描述的參數進行開發。請注意以下幾個問題:
合成文本長度必須小於1024位元組,如果本文長度較長,可以採用多次請求的方式。切忌不可文本長度超過限制。
語音合成 rest api初次申請預設請求數配額 200000次/天,如果預設配額不能滿足需求,請申請提高配額。
必要欄位中,嚴格按照文檔描述中內容填寫。
版本更新記錄
上線日期 |
版本號碼 |
更新內容 |
2017.5.11 |
1.0.0 |
語音合成服務上線 |
快速入門
安裝語音合成 PHP SDK
語音合成 PHP SDK目錄結構
├── AipSpeech.php //語音合成
└── lib
├── AipHttpClient.php //內部http請求類
├── AipBCEUtil.php //內部工具類
└── AipBase //Aip基類
支援PHP版本:5.3+
使用PHP SDK開發驟如下:
1.在官方網站下載php SDK壓縮包。
2.將下載的aip-php-sdk-version.zip
解壓後,複製AipSpeech.php以及lib/*到工程檔案夾中。
3.引入AipSpeech.php
建立AipSpeech
AipSpeech是語音合成的PHP SDK用戶端,為使用語音合成的開發人員提供了一系列的互動方法。
參考如下代碼建立一個AipSpeech:
require_once 'AipSpeech.php';// 你的 APPID AK SKconst APP_ID = '你的 App ID';const API_KEY = '你的 Api Key';const SECRET_KEY = '你的 Secret Key';$client = new AipSpeech(APP_ID, API_KEY, SECRET_KEY);
在上面代碼中,常量APP_ID
在百度雲控制台中建立,常量API_KEY
與SECRET_KEY
是在建立完畢應用後,系統分配給使用者的,均為字串,用於標識使用者,為訪問做簽名驗證,可在AI服務控制台中的應用列表中查看。
配置AipSpeech
如果使用者需要配置AipSpeech的網路請求參數(一般不需要配置),可以在構造AipSpeech之後調用介面設定參數,目前只支援以下參數:
介面 |
說明 |
setConnectionTimeoutInMillis |
建立串連的逾時時間(單位:毫秒) |
setSocketTimeoutInMillis |
通過開啟的串連傳輸資料的逾時時間(單位:毫秒) |
介面說明
語音合成
介面描述
基於該介面,開發人員可以輕鬆的擷取語音合成能力
請求說明
舉例,要把一段文字合成為語音檔案:
$result = $client->synthesis('你好百度', 'zh', 1, array( 'vol' => 5,));// 識別正確返回語音二進位 錯誤則返回json 參照下面錯誤碼if(!is_array($result)){ file_put_contents('audio.mp3', $result);}
參數 |
類型 |
描述 |
是否必須 |
tex |
String |
合成的文本,使用UTF-8編碼,請注意文本長度必須小於1024位元組 |
是 |
lang |
String |
語言選擇,填寫zh |
是 |
ctp |
String |
用戶端類型選擇,web端填寫1 |
是 |
cuid |
String |
使用者唯一標識,用來區分使用者,填寫機器 MAC 位址或 IMEI 碼,長度為60以內 |
否 |
spd |
String |
語速,取值0-9,預設為5中語速 |
否 |
pit |
String |
音調,取值0-9,預設為5中語調 |
否 |
vol |
String |
音量,取值0-15,預設為5中音量 |
否 |
per |
String |
發音人選擇, 0為女聲,1為男聲,3為情感合成-度逍遙,4為情感合成-度丫丫,預設為普通女 |
否 |
返回範例:
// 成功返回二進位檔案// 失敗返回{ "err_no":500, "err_msg":"notsupport.", "sn":"abcdefgh", "idx":1}
錯誤資訊
錯誤返回格式
若請求錯誤,伺服器將返回的JSON文本包含以下參數:
錯誤碼
錯誤碼 |
含義 |
500 |
不支援的輸入 |
501 |
輸入參數不正確 |
502 |
token驗證失敗 |
503 |
合成後端錯誤 |