详解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爬取Coursera课程资源的详细过程
Nov 04 Python
Django中URL视图函数的一些高级概念介绍
Jul 20 Python
python 3.6 +pyMysql 操作mysql数据库(实例讲解)
Dec 20 Python
50行Python代码实现人脸检测功能
Jan 23 Python
python tkinter控件布局项目实例
Nov 04 Python
python FTP批量下载/删除/上传实例
Dec 22 Python
Python模块相关知识点小结
Mar 09 Python
浅谈JupyterNotebook导出pdf解决中文的问题
Apr 22 Python
Python下载网易云歌单歌曲的示例代码
Aug 12 Python
Python爬虫入门教程01之爬取豆瓣Top电影
Jan 24 Python
Python控制台输出俄罗斯方块的方法实例
Apr 17 Python
Python中的 No Module named ***问题及解决
Jul 23 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
PHP form 表单传参明细研究
2009/07/17 PHP
php !function_exists("T7FC56270E7A70FA81A5935B72EACBE29"))代码解密
2011/01/07 PHP
PHP常用正则表达式集锦
2014/08/17 PHP
php微信公众号js-sdk开发应用
2016/11/28 PHP
php 人员权限管理(RBAC)实例(推荐)
2017/05/24 PHP
php实现将数组或对象写入到文件的方法小结【三种方法】
2020/04/22 PHP
javascript 打印内容方法小结
2009/11/04 Javascript
JavaScript 以对象为索引的关联数组
2010/05/19 Javascript
基于jquery的气泡提示效果
2010/05/31 Javascript
jQuery选择没有colspan属性的td的代码
2010/07/06 Javascript
jQuery移除tr无效的解决方法(tr是动态添加)
2014/09/22 Javascript
BootStrap注意事项小结(五)表单
2017/03/10 Javascript
vue.js实现刷新当前页面的方法教程
2017/07/05 Javascript
BetterScroll 在移动端滚动场景的应用
2017/09/18 Javascript
Vue2.5 结合 Element UI 之 Table 和 Pagination 组件实现分页功能
2018/01/26 Javascript
使用JavaScript保存文本文件到本地的两种方法
2019/01/22 Javascript
Vue2.0使用嵌套路由实现页面内容切换/公用一级菜单控制页面内容切换(推荐)
2019/05/08 Javascript
vue-router之实现导航切换过渡动画效果
2019/10/31 Javascript
Vue 嵌套路由使用总结(推荐)
2020/01/13 Javascript
Python编写电话薄实现增删改查功能
2016/05/07 Python
python实现的多线程端口扫描功能示例
2017/01/21 Python
Python编程实现数学运算求一元二次方程的实根算法示例
2017/04/02 Python
django admin 后台实现三级联动的示例代码
2018/06/22 Python
详解Python3中的迭代器和生成器及其区别
2018/10/09 Python
python读取目录下最新的文件夹方法
2018/12/24 Python
python实现拼接图片
2020/03/23 Python
美国老牌主机服务商:iPage
2016/07/22 全球购物
为什么要有struct关键字
2012/05/08 面试题
简历中的自我评价怎么写
2014/01/29 职场文书
KTV的创业计划书范文
2014/02/02 职场文书
2015年个人实习工作总结
2014/12/12 职场文书
2015个人简历自我评价语
2015/03/11 职场文书
2017年寒假少先队活动总结
2016/04/06 职场文书
李清照的诗词赏析(20首)
2019/08/22 职场文书
php字符串倒叙
2021/04/01 PHP
CSS实现五种常用的2D转换
2021/12/06 HTML / CSS