请求方式及参数基本说明
所有文档

          语音技术

          请求方式及参数基本说明

          请求方式及参数基本说明

          语音合成接口支持 POST 和 GET两种方式, 推荐POST方式请求。 正式地址:http://tsn.baidu.com/text2audiohttps://tsn.baidu.com/text2audio

          • POST 方式(推荐), 文本小于2048个中文字或者英文数字(5003、5118发音人需小于512个中文字或者英文数字)。
          • GET 方式,拼接后的url总长度不多于1000个字符,不推荐长文本合成使用。

          请求方式和参数

          上传参数

          参数 可需 描述
          tex 必填 合成的文本,使用UTF-8编码。小于2048个中文字或者英文数字,文本在百度服务器内转换为GBK后,长度必须小于4096字节(5003、5118发音人需小于512个中文字或者英文数字)
          tok 必填 开放平台获取到的开发者access_token(见上面的“鉴权认证机制”段落)
          cuid 必填 用户唯一标识,用来计算UV值。建议填写能区分用户的机器 MAC 地址或 IMEI 码,长度为60字符以内
          ctp 必填 客户端类型选择,web端填写固定值1
          lan 必填 固定值zh。语言选择,目前只有中英文混合模式,填写固定值zh
          spd 选填 语速,取值0-15,默认为5中语速
          pit 选填 音调,取值0-15,默认为5中语调
          vol 选填 音量,取值0-15,默认为5中音量
          per(基础音库) 选填 度小宇=1,度小美=0,度逍遥(基础)=3,度丫丫=4
          per(精品音库) 选填 度逍遥(精品)=5003,度小鹿=5118,度博文=106,度小童=110,度小萌=111,度米朵=103,度小娇=5
          aue 选填 3为mp3格式(默认); 4为pcm-16k;5为pcm-8k;6为wav(内容同pcm-16k); 注意aue=4或者6是语音识别要求的格式,但是音频内容不是语音识别要求的自然人发音,所以识别效果会受影响。

          tex字段2次urlencode

          由于urlencode有两个标准 RFC 1738和RFC 3986. 百度为了更好地兼容,支持1次及2次urlencode, 其中2次urlencode可以覆盖全部的特殊字符。因而推荐传递tex 参数时做2次urlencode编码。

          测试用例:“1+1=2”。 一次urlencode时,“+”可能会没有合成。

          POST调用方式(推荐)

          将文本以及其他参数写入到body里面,利用html表单的方式将参数传递到服务端。 所有的参数都在body中。body里面的数据为:

          tex=***&lan=zh&cuid=***&ctp=1&aue=3&tok=***
          tex 原始参数是"百度你好“
          第一次urlencode后 tex=%e7%99%be%e5%ba%a6%e4%bd%a0%e5%a5%bd
          第二次urlencode后 tex=%25e7%2599%25be%25e5%25ba%25a6%25e4%25bd%25a0%25e5%25a5%25bd

          GET调用方式

          将所有的参数都填写到URL地址中,可以通过浏览器可以播放合成的语音结果。

          https://tsn.baidu.com/text2audio?tex=***&lan=zh&cuid=***&ctp=1&tok=***
              
          // 注意tex参数需要按照url参数标准使用url_encode UTF8编码,如合成文字为“百度你好”,url为 http://tsn.baidu.com/text2audio?tex=%e7%99%be%e5%ba%a6%e4%bd%a0%e5%a5%bd&lan=zh&cuid=***&ctp=1&tok=***

          返回

          需要根据 Content-Type的头部来确定是否服务端合成成功。

          如果合成成功,返回的Content-Type以“audio”开头

          • aue =3 ,返回为二进制mp3文件,具体header信息 Content-Type: audio/mp3
          • aue =4 ,返回为二进制pcm文件,具体header信息 Content-Type:audio/basic;codec=pcm;rate=16000;channel=1
          • aue =5 ,返回为二进制pcm文件,具体header信息 Content-Type:audio/basic;codec=pcm;rate=8000;channel=1
          • aue =6 ,返回为二进制wav文件,具体header信息 Content-Type: audio/wav

          如果合成出现错误,则会返回json文本,具体header信息为:Content-Type: application/json。其中sn字段主要用于DEBUG追查问题,如果出现问题,可以提供sn帮助确认问题。

          错误示例:

          {"err_no":500,"err_msg":"notsupport.","sn":"abcdefgh","idx":1}

          错误码解释

          错误码 含义
          500 不支持输入
          501 输入参数不正确
          502 token验证失败
          503 合成后端错误

          问题反馈说明

          1. 如果是接口问题,请给出请求的url和返回的json。
          2. 如果是合成的发音错误,可以在 http://ai.baidu.com/tech/speech/tts#tts-demo 上测试。请按照以下格式反馈
          【restapi】【发音人】【在线】【错误类型】
           错误类型 分类:多音字、韵律、儿化音、TN(数字及特殊符号转换错误)、英文badcase、其他

          反馈两个badcase示例

          【restapi】【标准女声】【在线】【多音字“行”】
           文本:一行白鹭上青天
           描述:行念成(xing)
           期望:一行(hang)白鹭上青天
          
          【restapi】【标准女声】【在线】【其他,“人”发音不准确】
           文本:小主人
           描述:“人”发音类似“任”
           期望:小主人(ren2)
          上一篇
          鉴权认证机制
          下一篇
          注意事项