Python百度语音合成

309 阅读2分钟

                                                                    Python百度语音合成
1、API地址:ai.baidu.com/docs#/TTS-O…
(1)、API参数
tex        String    合成的文本,使用UTF-8编码,请注意文本长度必须小于1024字节    是
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为情感合成-度丫丫,默认为普通女    否
(2)、返回样例
// 成功返回二进制文件流
// 失败返回
{
"err_no":500,
"err_msg":"notsupport.",
"sn":"abcdefgh",
"idx":1
}
(3)、错误返回格式
若请求错误,服务器将返回的JSON文本包含以下参数:
error_code:错误码。
error_msg:错误描述信息,帮助理解和解决发生的错误。
(4)、错误码
500    不支持的输入
501    输入参数不正确
502    token验证失败

2、步骤:
1、安装Python扩展
pip install baidu-aip
2、去百度语音合成后台获取秘钥:我是用的手机号直接发送验证码登录
百度后台登录地址:console.bce.baidu.com/ai/?fromai=…
产品服务 => 人工智能 => 百度语音 => 创建引用
[
应用名称:自己写,最好见名知意
应用类型:随意
接口选择:默认
语音包名:不需要
应用描述:自行描述
]
点击 [立即创建]
然后就获取到了 [ AppID | API Key | Secret Key ]

3、python代码
# -*- coding: utf-8 -*-
from aip import AipSpeech

#百度后台获取的秘钥
APP_ID = '********'
API_KEY = '****************'
SECRET_KEY = '*****************'

client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

text =  '你是爱,是暖,是希望!你是人间四月天!'   #需要合成语音的文字内容
result = client.synthesis( text,'zh',1,{
'vol':5,
})

file_name = '林经典语录.mp3' #文件的名字

if not isinstance(result, dict):
with open( file_name, 'wb') as f:
f.write(result)\