野花社区日本韩国免费_久热中文字幕播放互動交流_欧美人与动牲交A日本_日韩不卡高清中文字幕_先锋影院在线无码_免费福利毛片一区_在线亚洲不卡av_亚洲天堂成人观看_男女激情爽爽爽免费视频在线观看_97超碰伊人自拍色色

文本to語音 百度AI SDK

日期:2019-07-05 分類:微信刷臉開發(fā)SDK資料 下載:7380 瀏覽:8702

點(diǎn)擊下載

https://ai.baidu.com/docs#/TTS-Online-Java-SDK/top

Java SDK文檔

簡介

Hi,您好,歡迎使用百度語音合成服務(wù)。

本文檔主要針對(duì)Java開發(fā)者,描述百度語音合成接口服務(wù)的相關(guān)技術(shù)內(nèi)容。如果您對(duì)文檔內(nèi)容有任何疑問,可以通過以下幾種方式聯(lián)系我們:

接口能力

接口名稱接口能力簡要描述
語音合成將計(jì)算機(jī)自己產(chǎn)生的、或外部輸入的文字信息轉(zhuǎn)變?yōu)榭梢月牭枚?、流利的口語輸出的技術(shù)。

注意事項(xiàng)

目前本SDK的功能同REST API,需要聯(lián)網(wǎng)調(diào)用http接口 。REST API 僅支持最多512字(1024 字節(jié))的音頻合成,合成的文件格式為mp3。沒有其他額外功能。 如果需要使用離線合成等其它功能,請(qǐng)使用Android或者iOS 合成 SDK

請(qǐng)嚴(yán)格按照文檔里描述的參數(shù)進(jìn)行開發(fā)。請(qǐng)注意以下幾個(gè)問題:

  1. 合成文本長度必須小于1024字節(jié),如果本文長度較長,可以采用多次請(qǐng)求的方式。切忌文本長度超過限制。

  2. 語音合成 rest api不限制調(diào)用量,但是初始的QPS為100,如果默認(rèn)配額不能滿足您的業(yè)務(wù)需求,請(qǐng)從控制臺(tái)中申請(qǐng)?zhí)岣吲漕~,我們會(huì)在兩個(gè)工作日內(nèi)完成審批

  3. 必填字段中,嚴(yán)格按照文檔描述中內(nèi)容填寫。

版本更新記錄

上線日期版本號(hào)更新內(nèi)容
2018.1.264.1.1語音合成修復(fù)服務(wù)端不返回Content-Type的情況;新增日志記錄
2017.12.123.4.1語音合成問題修復(fù)
2017.11.103.3.1語音合成返回?zé)osn問題修復(fù)
2017.10.183.2.1使用proxy問題修復(fù)
2017.8.253.0.0更新sdk打包方式:所有AI服務(wù)集成一個(gè)SDK
2017.7.141.0.1更新sdk打包方式
2017.6.301.0.0新增語音合成服務(wù)接口

快速入門

安裝Speech Java SDK

Speech Java SDK目錄結(jié)構(gòu)

com.baidu.aip
       ├── auth                                //簽名相關(guān)類
       ├── http                                //Http通信相關(guān)類
       ├── client                              //公用類
       ├── exception                           //exception類
       ├── speech
       │       └── AipSpeech           //AipSpeech類
       └── util                                //工具類

支持 JAVA版本:1.7+

查看源碼

Java SDK代碼現(xiàn)已公開,您可以查看代碼、或者在License范圍內(nèi)修改和編譯SDK以適配您的環(huán)境。 github鏈接:https://github.com/Baidu-AIP/java-sdk

使用maven依賴

添加以下依賴即可。其中版本號(hào)可在maven官網(wǎng)查詢

<dependency>
    <groupId>com.baidu.aip</groupId>
    <artifactId>java-sdk</artifactId>
    <version>${version}</version></dependency>

直接使用JAR包步驟如下

1.在官方網(wǎng)站下載Java SDK壓縮工具包。

2.將下載的aip-java-sdk-version.zip解壓后,復(fù)制到工程文件夾中。

3.在Eclipse右鍵“工程 -> Properties -> Java Build Path -> Add JARs”。

4.添加SDK工具包aip-java-sdk-version.jar和第三方依賴工具包json-20160810.jar log4j-1.2.17.jar

其中,version為版本號(hào),添加完成后,用戶就可以在工程中使用Speech Java SDK。

新建AipSpeech

AipSpeech是語音識(shí)別的Java客戶端,為使用語音識(shí)別的開發(fā)人員提供了一系列的交互方法。

用戶可以參考如下代碼新建一個(gè)AipSpeech,初始化完成后建議單例使用,避免重復(fù)獲取access_token:

public class Sample {    //設(shè)置APPID/AK/SK
    public static final String APP_ID = "你的 App ID";    public static final String API_KEY = "你的 Api Key";    public static final String SECRET_KEY = "你的 Secret Key";    public static void main(String[] args) {        // 初始化一個(gè)AipSpeech
        AipSpeech client = new AipSpeech(APP_ID, API_KEY, SECRET_KEY);        // 可選:設(shè)置網(wǎng)絡(luò)連接參數(shù)
        client.setConnectionTimeoutInMillis(2000);
        client.setSocketTimeoutInMillis(60000);        // 可選:設(shè)置代理服務(wù)器地址, http和socket二選一,或者均不設(shè)置
        client.setHttpProxy("proxy_host", proxy_port);  // 設(shè)置http代理
        client.setSocketProxy("proxy_host", proxy_port);  // 設(shè)置socket代理

        // 可選:設(shè)置log4j日志輸出格式,若不設(shè)置,則使用默認(rèn)配置
        // 也可以直接通過jvm啟動(dòng)參數(shù)設(shè)置此環(huán)境變量
        System.setProperty("aip.log4j.conf", "path/to/your/log4j.properties");        // 調(diào)用接口
        TtsResponse res = client.synthesis("你好百度", "zh", 1, null);        byte[] data = res.getData();
        JSONObject res1 = res.getResult();        if (data != null) {            try {
                Util.writeBytesToFileSystem(data, "output.mp3");
            } catch (IOException e) {
                e.printStackTrace();
            }
        }        if (res1 != null) {
            System.out.println(res1.toString(2));
        }
        
    }
}

其中示例的log4j.properties文件內(nèi)容如下:

#可以設(shè)置級(jí)別:debug>info>error#debug:顯示debug、info、error#info:顯示info、error#error:只errorlog4j.rootLogger=debug,appender1#log4j.rootLogger=info,appender1#log4j.rootLogger=error,appender1#輸出到控制臺(tái)log4j.appender.appender1=org.apache.log4j.ConsoleAppender#樣式為TTCCLayoutlog4j.appender.appender1.layout=org.apache.log4j.PatternLayout#自定義樣式# %r 時(shí)間 0# %t 方法名 main# %p 優(yōu)先級(jí) DEBUG/INFO/ERROR# %c 所屬類的全名(包括包名)# %l 發(fā)生的位置,在某個(gè)類的某行# %m 輸出代碼中指定的訊息,如log(message)中的message# %n 輸出一個(gè)換行l(wèi)og4j.appender.appender1.layout.ConversionPattern=[%d{yy/MM/dd HH:mm:ss:SSS}][%t][%p] -%l %m%n

在上面代碼中,常量APP_ID在百度云控制臺(tái)中創(chuàng)建,常量API_KEYSECRET_KEY是在創(chuàng)建完畢應(yīng)用后,系統(tǒng)分配給用戶的,均為字符串,用于標(biāo)識(shí)用戶,為訪問做簽名驗(yàn)證,可在AI服務(wù)控制臺(tái)中的應(yīng)用列表中查看。

配置AipSpeech

如果用戶需要配置AipSpeech的一些細(xì)節(jié)參數(shù),可以在構(gòu)造AipSpeech之后調(diào)用接口設(shè)置參數(shù),目前只支持以下參數(shù):

接口說明
setConnectionTimeoutInMillis建立連接的超時(shí)時(shí)間(單位:毫秒)
setSocketTimeoutInMillis通過打開的連接傳輸數(shù)據(jù)的超時(shí)時(shí)間(單位:毫秒)
setHttpProxy設(shè)置http代理服務(wù)器
setSocketProxy設(shè)置socket代理服務(wù)器 (http和socket類型代理服務(wù)器只能二選一)

接口說明

語音合成

接口描述

基于該接口,開發(fā)者可以輕松的獲取語音合成能力

請(qǐng)求說明

  • 合成文本長度必須小于1024字節(jié),如果本文長度較長,可以采用多次請(qǐng)求的方式。文本長度不可超過限制

舉例,要把一段文字合成為語音文件:

public void synthesis(AipSpeech client)
{
    TtsResponse res = client.synthesis("你好百度", "zh", 1, null);
	System.out.println(res.getErrorCode());	// 設(shè)置可選參數(shù)
	HashMap<String, Object> options = new HashMap<String, Object>();
    options.put("spd", "5");
    options.put("pit", "5");
    options.put("per", "4");
    TtsResponse res = client.synthesis("你好百度", "zh", 1, options);
    System.out.println(res.getErrorCode());    JSONObject result = res.getResult();    //服務(wù)器返回的內(nèi)容,合成成功時(shí)為null,失敗時(shí)包含error_no等信息
    byte[] data = res.getData();            //生成的音頻數(shù)據(jù)}
參數(shù)類型描述是否必須
texString合成的文本,使用UTF-8編碼,
請(qǐng)注意文本長度必須小于1024字節(jié)
cuidString用戶唯一標(biāo)識(shí),用來區(qū)分用戶,
填寫機(jī)器 MAC 地址或 IMEI 碼,長度為60以內(nèi)
spdString語速,取值0-9,默認(rèn)為5中語速
pitString音調(diào),取值0-9,默認(rèn)為5中語調(diào)
volString音量,取值0-15,默認(rèn)為5中音量
perString發(fā)音人選擇, 0為女聲,1為男聲,
3為情感合成-度逍遙,4為情感合成-度丫丫,默認(rèn)為普通女

返回樣例

返回TtsResponse類。 如果合成成功,下行數(shù)據(jù)為二進(jìn)制語音文件,包含在data中。 如果合成出現(xiàn)錯(cuò)誤,則會(huì)填充返回值到result中。

返回失?。?/p>

// 失敗返回{	"err_no":500,	"err_msg":"notsupport.",	"sn":"abcdefgh",	"idx":1}

錯(cuò)誤信息

錯(cuò)誤返回格式

若請(qǐng)求錯(cuò)誤,服務(wù)器將返回的JSON文本包含以下參數(shù):

  • error_code:錯(cuò)誤碼。

  • error_msg:錯(cuò)誤描述信息,幫助理解和解決發(fā)生的錯(cuò)誤。

錯(cuò)誤碼

SDK本地檢測參數(shù)返回的錯(cuò)誤碼

error_codeerror_msg備注
SDK108connection or read data time out連接超時(shí)或讀取數(shù)據(jù)超時(shí)

服務(wù)端返回的錯(cuò)誤碼

錯(cuò)誤碼含義
500不支持的輸入
501輸入?yún)?shù)不正確
502token驗(yàn)證失敗
503合成后端錯(cuò)誤


上一篇:對(duì)接收銀機(jī)雙工線 開發(fā)SDK

下一篇:Android 實(shí)現(xiàn)USB掃碼數(shù)據(jù)抓取(三個(gè)參考方法)

0755 - 8336 8811
13632541019 18025353128