- 1.png
- 上一篇文章Python+edge-tts实现文本转语音并播放中实现了文字转语音的功能
- 就是在那一篇文章中说的,第二种是使用离线库进行文本转语音的方法
- 这一次来介绍一下那个文章说的,第一种通过第三方接口实现文字转语音
- 但是要注意了,在那一篇文章中说过了
- 无论是使用第三方平台官方的还是自己扒的接口
- 无一例外基本上都是有额度限制的,超过了要付费或者限制
- 现在来实现一下
- 准备工作
- 在百度智能云官网上注册并登录
- 在产品>语音技术>长文本在线合成>立即使用
- 创建一个应用
- 2.png
- 获取相应的API接口
- 3.png
- 安装百度的aip库
pip install baidu-aip
- 创建配置文件
touch config.json
- 写入内容
{ "cache_music":"cache.mp3", "app_id":"在百度智能云获取并且填写", "api_key":"在百度智能云获取并且填写", "secret_key":"在百度智能云获取并且填写" }
- 创建脚本
touch main.py
- 写入内容
""" ------------------------------------------------- # !~/桌面/弹幕 # -*- coding: utf-8 -*- # @Time : 2023-08-31 22:04:14 # @Author : buyan<buyan@mail.qaqbuyan.com> # @Description : 百度音频文件播放 ------------------------------------------------- """ import json from aip import AipSpeech from playsound import playsound # 配置文件 config = "./config.json" configuration = json.load(open(config, encoding='utf-8')) # 缓存音频 cache_music = configuration["cache_music"] # 百度的接口 需要在 https://cloud.baidu.com/ 注册获取 # APP_ID app_id = configuration["app_id"] # API_KEY api_key = configuration["api_key"] # SECRET_KEY secret_key = configuration["secret_key"] def play_baidu(text): print(text) client = AipSpeech(app_id, api_key, secret_key) result = client.synthesis(text, 'zh', 1, { "vol": 9,#音量(1~9) "spd": 3,#语速(1~9) "pit": 5,#语调(1~9) "per": 5,#0:女声 1:男声 3:逍遥音 4:萝莉音 5:御姐音 }) if not isinstance(result, dict): with open(cache_music, 'wb') as f: f.write(result) # 播放 playsound(cache_music) if __name__ == '__main__': play_baidu("你好,我是程序员卟言")
- 运行脚本
python3 ./main.py
【python使用百度智能云实现文字转语音】
qaq卟言2023-10-27 22:22:55
Python
开始
完结