Python发声,只需两行代码,漂亮(16)

文章介绍了如何使用Python的winsound库播放声音,以及对speech模块进行修改以实现语音输出。此外,还提到了其他语音相关的库如gtts、baidu-aip、pyttsx3和pywin32,以及用于音频处理的pydub库。文章适合初学者,教授了Python在声音和语音方面的基本应用。
摘要由CSDN通过智能技术生成

小朋友们好,大朋友们好!

我是猫妹,一名爱上Python编程的小学生。

欢迎和猫妹一起,趣味学Python。

今日主题

我们平时用的APP或者游戏,很多都少不了有趣的声音。

让Python发出声音难吗?

一点也不难,咱们今天就学习一些和声音有关的Python库。

winsound库

win:胜利

souun:声音

winsound这个名字,真是不错啊!

winsound模块提供了对Windows平台提供的基本声音播放机制的访问。它包括函数和几个常量。

winsound.Beep(frequency , duration)

参数frequency 分贝 范围 37-32,767, 参数duration 持续时间 :单位毫秒;

winsound.PlaySound(sound,flags)

从平台API调用基础PlaySound()函数。

参数 声音sound 可以是文件名、系统声音别名、类似字节对象的音频数据,或者没有。它的解释取决于参数标志flags的值,

官方文档

除了上述两个最常见的API外,还有更多许多哦,感兴趣的小伙伴可以访问官网哦!

https://docs.python.org/3.6/library/winsound.html?highlight=winsound#module-winsound

speech库

speech:演说,发言

在python中我们可以使用speech模块让计算机进行语音输出。

首先,需要用pip install speech进行安装。

speech模块最早是在python 2.x中开发的,在python 3.x中并不能够直接使用,我们需要打开它安装后的原始文件,并进行以下调整即可。

方式一

修改Python库安装目录下(Python38\Lib\site-packages)的speech.py。

  1. 原始文件第157行,print prompt应该改为print(prompt)。

  1. 原始文件第59行,thread应该改为threading。

  1. 拖动文件到最后,将246行以后的部分全部替换为:

设置好了之,就可以让Python发声了。

方式二

修改Python库安装目录下(Python38\Lib\site-packages)的speech.py。

  1. 原始文件第157行,print prompt应该改为print(prompt)。

  1. 原始文件第59行,thread应该改为_thread。

  1. 拖动文件到最后,将263行由thread改为_thread。

speech.input() 这一行代码就可以实现语音识别,第一次使用需要配置一下。

第一次启用需要进行语音识别设置,按如下步骤进行即可。

流程是通的,只是语音识别这块有点out。

猫妹的电脑是win7,老古董了。

像win10,win11等较新系统,都可对语音识别进行训练,提高识别精度。

5种基于Python文字转化语音方法

  • gtts

  • baidu-aip

  • pyttsx3

  • pywin32

  • speech

最后,再推荐一款功能强大的Python语音库pydub:

Pydub lets you do stuff to audio in a way that isn't stupid.

比如下面两行代码可以把mp3文件转换为wav格式:

song=AudioSegment.from_mp3(r"D:\娱乐\日不落.mp3")

song.export(r"D:\娱乐\日不落.wav",format='wav')

好了,我们今天就学到这里吧!

如果遇到什么问题,咱们多多交流,共同解决。

我是猫妹,咱们下次见!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值