python把文字转成语音

用的是百度的接口,搜索百度AI开放平台,登陆后选择产品服务-人工智能-语音技术,然后创建一个应用(语音合成)

创建后会有一个三个key,调用的时候会用到

 

调用起来还是挺简单的

from aip import AipSpeech
#一次只能转换512个汉字,长文章需要分段转换
APP_ID = '你的ID'
API_KEY = '你的key'
SECRET_KEY = '你的key'
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

text="将进酒" \
"君不见黄河之水天上来,奔流到海不复回。" \
"君不见高堂明镜悲白发,朝如青丝暮成雪。" \
"人生得意须尽欢,莫使金樽空对月。" \
"天生我材必有用,千金散尽还复来。" \
"烹羊宰牛且为乐,会须一饮三百杯。" \
"岑夫子,丹丘生,将进酒,杯莫停。" \
"与君歌一曲,请君为我侧耳听。" \
"钟鼓馔玉不足贵,但愿长醉不复醒。" \
"古来圣贤皆寂寞,惟有饮者留其名。" \
"陈王昔时宴平乐,斗酒十千恣欢谑。" \
"主人何为言少钱,径须沽取对君酌。" \
"五花马,千金裘,呼儿将出换美酒,与尔同消万古愁。"


'''

参数 类型       描述                                  是否必须
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为情感合成-度丫丫,默认为普通女      否

'''

result = client.synthesis(text, 'zh', 1, {
"spd": 5,
'vol': 5,
"pit": 4,
"per": 0,
})

#如果参数没有错误,在.py的当前文件目录下会出现一个test.mp3文件
if not isinstance(result, dict):
with open('test.mp3', 'wb') as f:
f.write(result)
else:
print(result)

猜你喜欢

转载自www.cnblogs.com/newbee-yun/p/12187480.html