语音合成
一、接口描述
1. 功能描述
将输入的文本内容转成音频输出
2. 能力说明:
3. 接口数据要求:
- 音频格式:Base64
4. 接口使用:
二、请求说明
1. 接口地址 :
https://aiapi.jd.com/jdai/tts_economic_daily
2. 请求方式:
post
3. 请求参数
(1)query请求参数
公共请求参数
名称 |
类型 |
必填 |
示例值 |
描述 |
appkey |
String |
是 |
80d2b762ecb86593f9668526920f46c |
您的appkey,可在买家中心控制台中获取 |
timestamp |
long |
是 |
1541491668060 |
请求的时间戳,精确到毫秒,timestamp有效期5分钟 |
sign |
String |
是 |
2e148773a0337a8f2200ba90d445f083 |
签名,根据规则MD5(sectetkey+timestamp) |
业务请求参数
名称 |
类型 |
必填 |
示例值 |
描述 |
Content-Type |
String |
是 |
application/x-www-form-urlencoded |
form表单 |
(3)body请求参数
业务请求参数
名称 |
类型 |
必填 |
示例值 |
描述 |
text |
String |
是 |
你好 |
需要合成音频的文字 |
speed_ratio |
float |
否 |
1.0 |
语速控制0.5 ~ 1.5, >1 是加快, <1 是减慢, 1.0是预设值 |
type |
String |
是 |
1 |
类型标识 (预留, 目前没用到),传1 |
speed_finetune |
String |
否 |
“0.7,1.3” |
是一个string, 用于微调单次调用内的语速, 缺省为空字串("")代表不使用 |
pitch_shift |
String |
否 |
"-4,2" |
用于微调单次调用内的f0 |
global_pitch_shift |
float |
否 |
1 |
用于调整整句话的f0 |
session_id |
String |
是 |
1 |
session_id |
speaker_id |
String |
是 |
hexin |
说话人 id |
sample_rate |
int |
是 |
8000/16000/22050 |
模型输出的音频采样率 |
vol_scale |
int |
否 |
50 |
0 ~ 100的整数, 预设50为正常音量 |
4、请求代码示例
{
"sample_rate": 22050,
"session_id": "111",
"speaker_id": "hexin",
"speed_ratio": 1.0,
"split_delimiters_str": "",
"text": "这裡是京东金融",
"type": "1",
"vol_scale": 50
}
三、返回说明
1.返回参数
(1)公共返回参数
名称 |
类型 |
示例值 |
描述 |
code |
string |
1000 |
参见下方错误码-系统级错误码 |
charge |
boolean |
false 或 true |
false:不扣费, true:扣费 |
remainTimes |
long |
1305 |
剩余调用次数;免费api:每天剩余调用次数;收费api:剩余次数;无限制时为-1 |
remainSeconds |
long |
1223456 |
剩余调用时间(s);免费api:-1;收费api:剩余调用时间;无限制时为-1 |
msg |
string |
查询成功 |
参见下方错误码-系统级错误码 |
result |
object |
{...} |
查询结果 |
(2)业务返回参数
名称 |
类型 |
示例值 |
描述 |
error_msg |
string |
|
error message, 错误讯息, 如果为空字串代表成功, 否则会有字串显示大致的错误内容 |
tts_service_code |
string |
1 |
预留参数, 调用成功 "1", 失败 "0" |
wav_file |
string |
|
base64 encode之后的结果, 将此结果用base64 decode后是wav file format的bytes, 存档后就是wav file |
2、返回示例
{
"code": "10000",
"charge": false,
"remainTimes": 4998,
"remainSeconds": -1,
"msg": "查询成功",
"result": {
{
"error_msg": "",
"tts_service_code": "1",
"wav_file": "UklGRhAdAABXQVZFZm10IBA...."
}
}
四、错误码
1.系统级错误码
详见返回码
2.业务错误码
业务错误码(status) |
message |
说明 |
11001 |
"invalid param" |
用户相关,参数错误 |
30201 |
"server err, invalid cntl" |
服务器相关, 服务器未完成初始化 |
30202 |
"server is busy now, call later" |
服务器相关, 服务器忙 |
30203 |
"text too short" |
用户相关,文本过短(没有文本时返回) |
30204 |
"text too long" |
用户相关,文本过长(超过1000个字符) |
30205 |
"server err, error seqid" |
用户相关,seq_id不正确,如值为1但是当前已有相同session; 或值不为1但当前没有相同session |
30206 |
"server err, read response failed" |
TTS引擎相关,TTS引擎读取错误 |
30207 |
"server err, base64 encode failed" |
base64编码失败 |
30208 |
"server err, session is processing" |
服务相关,请求正在处理 |
30252 |
"tts engine internal error" |
引擎错误,出现内部错误 |
30253 |
"tts engine read timeout" |
引擎错误,读取缓存超时 |
30254 |
"tts engine ssml parsing failed" |
引擎错误,SSML 解析错误,如不支持的tag |
30255 |
"tts engine ssml bad parameter" |
引擎错误,SSML 参数错误,如指定了错误的发音人 |
30256 |
"tts engine ssml nesting error" |
引擎错误,SSML 嵌套错误,如 say-as 下嵌套了 background |
30257 |
"tts engine url download failed" |
引擎错误,URL 下载失败 |
30258 |
"tts engine url unsupported file format" |
引擎错误,URL 下载文件格式不正确(格式不支持) |