利用百度api实现语音合成

参考百度云平台语音合成接口python调用

  1. 首先在百度云注册账号并注册语音合成api
    在这里插入图片描述
    注册语音识别后得到这三个东西
    这是我的
    APP_ID = ‘1603****’
    API_KEY = ‘2bgYdaqiAWTzgniVXN9x1H9t’
    SECRET_KEY = ‘YDlP0liKRu7ejMkUej8L2Twcl7Byu0F1’
  2. 下载所需的库

在这里插入图片描述
下载python库,然后将其解压到程序目录就可以使用
然后到目录安装

python3 setup.py install

或者直接把库复制到目录里

3.安装百度api库

如果使用pip安装
pip3 install baidu-api

4.代码

#-*- coding:utf-8 -*- 
from aip import AipSpeech
""" 你的 APPID AK SK """
APP_ID = '16030232'
API_KEY = '2bgYdaqiAWTzgniVXN9x1H9t'
SECRET_KEY='YDlP0liKRu7ejMkUej8L2Twcl7Byu0F1'
def main(str_input): #输入要合成的文字
    client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)#接口调用
    result  = client.synthesis(str_input,'zh',1,{'spd':5,'vol': 5,'per':4})#进行合成并返回
    ''' spd 语速 0-9 ; vol 音量 0-15 ; per 人声选择 1-4 '''
        # 识别正确返回语音二进制 错误则返回dict 参照下面错误码
    filename="sound_result" #保存的文件名
    if not isinstance(result, dict):
        with open(filename+'.mp3', 'wb') as f:
            f.write(result)
                
if __name__ == '__main__':
    main("你好帅啊")

这里要注意

result  = client.synthesis(str_input,'zh',1,{'spd':5,'vol': 5,'per':4})#进行合成并返回

的参数选择,可以参考下图
在这里插入图片描述
最后就能在程序目录生成一个合成的mp3文件
在这里插入图片描述
最后就用 mpg123 播放看看吧

os.system("sudo mpg123 ./sound_result.mp3")

猜你喜欢

转载自blog.csdn.net/cool_bot/article/details/90108139