详解python播放音频的三种方法


Posted in Python onSeptember 23, 2019

第一种 使用pygame模块

pygame.mixer.init()
  pygame.mixer.music.load(self.wav_file) 
  pygame.mixer.music.set_volume(0.5) 
  pygame.mixer.music.play()

缺点:pygame模块播放音频时,有时候会产生失真,且无法通过修改播放器的频率来矫正音色。

第二种 使用pyqt5模块

from PyQt5 import QtMultimedia
from PyQt5.QtCore import QUrl
file = QUrl.fromLocalFile(wav_file) # 音频文件路径
content = QtMultimedia.QMediaContent(file)
player.setMedia(content)
player.setVolume(50.0)
player.play()

缺点:由于大部分人使用的python环境为anaconda配置的环境,在anaconda下的pyqt5没有QtMultimedia这一模块,只能自己使用pip安装,但是使用pip安装后如果anaconda环境下有spyder、anaconda navigator等图形化界面程序,这些程序会无法打开,因此使用pip安装后调试完毕后记得使用pip卸载掉,之后才能正常打开spyder等程序。

第三种 使用pyaudio模块

import pyaudio
import wave
import sys
chunk = 1024
wf = wave.open('gyh.wav', 'rb')
p = pyaudio.PyAudio()
stream = p.open(format=p.get_format_from_width(wf.getsampwidth()),
        channels=wf.getnchannels(),
        rate=wf.getframerate(),
        output=True)
data = wf.readframes(chunk)
while len(data) > 0:
  stream.write(data)
  data = wf.readframes(CHUNK)
stream.stop_stream()
stream.close()
p.terminate()

缺点:无,就是代码多点。

总结

以上所述是小编给大家介绍的python播放音频的三种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python中运行并行任务技巧
Feb 26 Python
使用Python脚本操作MongoDB的教程
Apr 16 Python
Python中的模块导入和读取键盘输入的方法
Oct 16 Python
python 写的一个爬虫程序源码
Feb 28 Python
python实现的二叉树定义与遍历算法实例
Jun 30 Python
解决Python网页爬虫之中文乱码问题
May 11 Python
python3.6使用pickle序列化class的方法
Oct 22 Python
python pprint模块中print()和pprint()两者的区别
Feb 10 Python
Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
Feb 13 Python
python利用platform模块获取系统信息
Oct 09 Python
Python图片处理之图片裁剪教程
May 27 Python
Python作用域和名称空间的详细介绍
Apr 13 Python
Python进程间通信 multiProcessing Queue队列实现详解
Sep 23 #Python
python程序中的线程操作 concurrent模块使用详解
Sep 23 #Python
Python3 pandas 操作列表实例详解
Sep 23 #Python
详解基于python-django框架的支付宝支付案例
Sep 23 #Python
如何利用Python开发一个简单的猜数字游戏
Sep 22 #Python
Python中关于浮点数的冷知识
Sep 22 #Python
Python安装及Pycharm安装使用教程图解
Sep 20 #Python
You might like
php7新特性的理解和比较总结
2019/04/14 PHP
浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑
2019/10/21 PHP
关于Ext中form移除textfield方法:hide(),setVisible(false),remove()
2010/12/02 Javascript
JQuery魔力之$("tagName")与selector
2012/03/05 Javascript
js判断undefined类型,undefined,null, 的区别详细解析
2013/12/16 Javascript
jquery制作居中遮罩层效果分享
2014/02/21 Javascript
Js中使用hasOwnProperty方法检索ajax响应对象的例子
2014/12/08 Javascript
详细解密jsonp跨域请求
2015/04/15 Javascript
jQuery获取URL请求参数的方法
2015/07/18 Javascript
JavaScript学习小结(7)之JS RegExp
2015/11/29 Javascript
JavaScript代码实现左右上下自动晃动自动移动
2016/04/08 Javascript
Bootstrap登陆注册页面开发教程
2016/07/12 Javascript
JavaScript 实现 Tab 点击切换实例代码
2017/03/25 Javascript
vue translate peoject实现在线翻译功能【新手必看】
2018/06/07 Javascript
基于vue.js组件实现分页效果
2018/12/29 Javascript
详解一个小实例理解js原型和继承
2019/04/24 Javascript
使用vue2.6实现抖音【时间轮盘】屏保效果附源码
2019/04/24 Javascript
JavaScript将数组转换为链表的方法
2020/02/16 Javascript
vue实现公告栏文字上下滚动效果的示例代码
2020/06/16 Javascript
vue实现滚动鼠标滚轮切换页面
2020/12/13 Vue.js
Python3中常用的处理时间和实现定时任务的方法的介绍
2015/04/07 Python
python矩阵的转置和逆转实例
2018/12/12 Python
python用opencv完成图像分割并进行目标物的提取
2020/05/25 Python
关于老式浏览器兼容HTML5和CSS3的问题
2016/06/01 HTML / CSS
Desigual英国官网:在线购买原创服装
2018/03/09 全球购物
大二自我鉴定
2014/01/31 职场文书
经济类毕业生求职信
2014/06/26 职场文书
2014年宣传工作总结
2014/11/18 职场文书
城管个人总结
2015/02/28 职场文书
写给导师的自荐信
2015/03/06 职场文书
工程部岗位职责范本
2015/04/11 职场文书
小学教师师德师风承诺书
2015/04/28 职场文书
2016春季田径运动会广播稿
2015/12/21 职场文书
机关单位2016年法制宣传日活动总结
2016/04/01 职场文书
python爬虫之selenium库的安装及使用教程
2021/05/23 Python
教你如何使用Python开发一个钉钉群应答机器人
2021/06/21 Python