浅谈盘点5种基于Python生成的个性化语音方法


Posted in Python onFebruary 05, 2021

    小编在很小的时候就特别喜欢搞怪,模仿别人的声音,尤其是老头老太太模仿的那是一个出神入化。

    今天小编就带大家模仿一下个性化的声音,不过不是用小编的嘴,而是用程序,看它们都是怎么被模仿出来的。

1、gtts模块

    这是一款语音模块,它可以将任意文字转换为音频文件,格式为mp3。下面我们一起来看看它的用法:

一、安装并导入:

pip install gtts
from gtts import gTTS

二、配置gtts客户端

tts = gTTS(text=text, lang='zh-tw')

text:音频内容
lang: 音频语言

三、保存音频文件

tts.save("XXX.mp3")

2、baidu-aip

    通过在百度开放开发者平台申请语音合成账号来生成音频文件。

浅谈盘点5种基于Python生成的个性化语音方法 

# 下载baidu-aip模块并导入
from aip import AipSpeech
""" 你的 APPID AK SK """
APP_ID = '你的 App ID'
API_KEY = '你的 Api Key'
SECRET_KEY = '你的 Secret Key'
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY) #配置百度语音客户端
res=client.synthesis(text,lang,1,options={
spd:语速,取值0-9,默认为5中语速,
pit:音调,取值0-9,默认为5中语调,
vol:音量,取值0-15,默认为5中音量,
per:发音人选择, 0为女声,1为男声, 3为情感合成-度逍遥,4为情感合成-度丫丫,默认为普通女
}) #配置个性化语音
with open('XX.mp3','wb') as f: #打开文件流
f.write(res)  #写入文件

3、pyttsx3

这也是一款优秀的文字转语音的模块,它生成的音频文件也比较具有个性化。

下载pyttsx3模块并导入:

pip install pyttsx3
import pyttsx3

初始化:

pp = pyttsx3.init()

添加语音文本:

pp.say('Hello World')

运行:

pp.runAndWait()

当然它还可以调整声音的音量,频率,变声,当然设置方法都差不多,都是先拿到它对应功能的值然后在进行加减。

比如说音量调节:

vol=pp.getProperty('volume')
pp.setProperty('vol',vol+0.5)

对于发音,频率,变声则为 vioce,rate,vioces,是不是很好理解了?当然,如果你想让它循环播放,只需加一个事件驱动循环即可:

pp.startLoop()

4、pywin32

操作window dll的库,它可以实现很多功能,十分强大。

安装并且导入:

pip install pywin32
import win32com.client

配置客户端接口:

speaker = win32com.client.Dispatch("SAPI.SpVoice")

生成音频:

speaker.Speak("hello")

由于对中文支持不友好,所以基本用的不多。

5、speech

也是一款强大的语音模块,依赖于pywin32,而且它最适合做语音启动程序了。

下载并导入:

pip install speech
import speech

生成音频:

speech.say('hello')

这么多音频模块,你了解多少了,到底哪一个才是你的菜呢?

到此这篇关于浅谈盘点5种基于Python生成的个性化语音方法的文章就介绍到这了,更多相关Python生成个性化语音内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python 时间操作例子和时间格式化参数小结
Apr 24 Python
Python查找相似单词的方法
Mar 05 Python
python安装与使用redis的方法
Apr 19 Python
详解 Python中LEGB和闭包及装饰器
Aug 03 Python
Python中 传递值 和 传递引用 的区别解析
Feb 22 Python
详解Python的数据库操作(pymysql)
Apr 04 Python
python实现微信机器人: 登录微信、消息接收、自动回复功能
Apr 29 Python
django 2.2和mysql使用的常见问题
Jul 18 Python
详细整理python 字符串(str)与列表(list)以及数组(array)之间的转换方法
Aug 30 Python
python GUI库图形界面开发之PyQt5图片显示控件QPixmap详细使用方法与实例
Feb 27 Python
python生成13位或16位时间戳以及反向解析时间戳的实例
Mar 03 Python
Python+Appium实现自动抢微信红包
May 21 Python
Python环境搭建过程从安装到Hello World
Feb 05 #Python
Python使用pyenv实现多环境管理
Feb 05 #Python
python中的unittest框架实例详解
Feb 05 #Python
python脚本使用阿里云slb对恶意攻击进行封堵的实现
Feb 04 #Python
用60行代码实现Python自动抢微信红包
Feb 04 #Python
Python+Appium实现自动化清理微信僵尸好友的方法
Feb 04 #Python
python中操作文件的模块的方法总结
Feb 04 #Python
You might like
php5.4以上版本GBK编码下htmlspecialchars输出为空问题解决方法汇总
2015/04/03 PHP
PHP实现一个轻量级容器的方法
2019/01/28 PHP
php实现图片压缩处理
2020/09/09 PHP
js传值 判断
2006/10/26 Javascript
Mac地址验证的javascript代码
2013/11/09 Javascript
javascript实现控制div颜色
2015/07/07 Javascript
js鼠标点击图片切换效果代码分享
2015/08/26 Javascript
jQuery layui常用方法介绍
2016/07/25 Javascript
总结Javascript中的隐式类型转换
2016/08/24 Javascript
AngularJS表单和输入验证实例
2016/11/02 Javascript
解决ajax不能访问本地文件问题(利用js跨域原理)
2017/01/24 Javascript
基于pako.js实现gzip的压缩和解压功能示例
2017/06/13 Javascript
jQuery+koa2实现简单的Ajax请求的示例
2018/03/06 jQuery
基于vue.js实现的分页
2018/03/13 Javascript
vue中的模态对话框组件实现过程
2018/05/01 Javascript
如何更好的编写js async函数
2018/05/13 Javascript
Mint-UI时间组件起始时间问题及时间插件使用
2018/08/20 Javascript
微信小程序基础教程之worker线程的使用方法
2019/07/15 Javascript
vue 中的 render 函数作用详解
2020/02/28 Javascript
[04:20]DOTA2-DPC中国联赛 正赛 VG vs LBZS 选手采访 1月19日
2021/03/11 DOTA
使用Python的Django框架实现事务交易管理的教程
2015/04/20 Python
Python中实现switch功能实例解析
2018/01/11 Python
python实现K最近邻算法
2018/01/29 Python
Python基于Tkinter模块实现的弹球小游戏
2018/12/27 Python
Python字符串的一些操作方法总结
2019/06/10 Python
Python 把序列转换为元组的函数tuple方法
2019/06/27 Python
String和StringBuffer的区别
2015/08/13 面试题
房地产融资计划书
2014/01/10 职场文书
生物学学生自我评价
2014/01/17 职场文书
国贸专业自荐信范文
2014/03/02 职场文书
应届生求职自荐信范文
2014/04/07 职场文书
工商管理专业毕业生自我鉴定2014
2014/10/04 职场文书
经理助理岗位职责
2015/02/02 职场文书
骆驼祥子读书笔记
2015/06/26 职场文书
SpringCloud的JPA连接PostgreSql的教程
2021/06/26 Java/Android
Python编程编写完善的命令行工具
2021/09/15 Python