赞
踩
协议 | URL | 方法 |
---|---|---|
HTTPS | http://ip:8090/synthesis | POST |
名称 | 类型 | 需求 | 描述 |
---|---|---|---|
Content-type | String | 必填 | ‘application/json’ |
Accept | String | 必填 | 识别结果返回格式,仅支持’text/json’ |
名称 | 类型 | 需求 | 描述 |
---|---|---|---|
text | String | 必填 | 编码格式必须为utf-8 |
名称 | 类型 | 描述 |
---|---|---|
success | String | 合成是否成功,True/False |
message | String | message |
data | String | 合成的音频文件的base64编码的字符串 |
from __future__ import unicode_literals
import httplib
import json
import base64
class SynthesisAPI():
def __init__(self):
self.url = 'http://ip:8090/synthesis'
self.headers = {"Content-type": "application/json", "Accept": "text/json"}
self.conn = httplib.HTTPConnection('ip:8090')
def Synthesis(self, text):
'''
:param text: 预合成文本 type:unincode
:return:
'''
# p = {"voice_type": voice_type, "text": text}
p = {"text": text}
params = json.dumps(p)
self.conn.request('POST', self.url, params, self.headers)
response = self.conn.getresponse()
json_data = response.read()
json_data = json.loads(json_data)
print(bytes(json_data['data']))
with open('./audio_result.wav', 'wb') as f: #./audio_result.wav :合成文件保存位置
f.write(base64.b64decode(bytes(json_data['data'])))
return json_data
if __name__ == '__main__':
syn = SynthesisAPI()
#请求成功返回:{'success': True, 'message': u'成功响应', 'data': md5(request.json['speakerid']+request.json['text'])}
print(syn.Synthesis('2月30号'))
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。