首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

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

我是猫妹,一名爱上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。

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

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

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

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

方式二

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

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

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

拖动文件到最后,将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')

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

我是猫妹,咱们下次见!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230325A00S2K00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券