python使用PyGame播放Midi和Mp3文件的方法


Posted in Python onApril 24, 2015

本文实例讲述了python使用PyGame播放Midi和Mp3文件的方法。分享给大家供大家参考。具体实现方法如下:

''' pg_midi_sound101.py
play midi music files (also mp3 files) using pygame
tested with Python273/331 and pygame192 by vegaseat
'''
import pygame as pg
def play_music(music_file):
  '''
  stream music with mixer.music module in blocking manner
  this will stream the sound from disk while playing
  '''
  clock = pg.time.Clock()
  try:
    pg.mixer.music.load(music_file)
    print("Music file {} loaded!".format(music_file))
  except pygame.error:
    print("File {} not found! {}".format(music_file, pg.get_error()))
    return
  pg.mixer.music.play()
  # check if playback has finished
  while pg.mixer.music.get_busy():
    clock.tick(30)
# pick a midi or MP3 music file you have in the working folder
# or give full pathname
music_file = "Latin.mid"
#music_file = "Drumtrack.mp3"
freq = 44100  # audio CD quality
bitsize = -16  # unsigned 16 bit
channels = 2  # 1 is mono, 2 is stereo
buffer = 2048  # number of samples (experiment to get right sound)
pg.mixer.init(freq, bitsize, channels, buffer)
# optional volume 0 to 1.0
pg.mixer.music.set_volume(0.8)
try:
  play_music(music_file)
except KeyboardInterrupt:
  # if user hits Ctrl/C then exit
  # (works only in console mode)
  pg.mixer.music.fadeout(1000)
  pg.mixer.music.stop()
  raise SystemExit

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python实现的登陆Discuz!论坛通用代码分享
Jul 11 Python
对tensorflow 的模型保存和调用实例讲解
Jul 28 Python
Python连接Mssql基础教程之Python库pymssql
Sep 16 Python
Python 经典面试题 21 道【不可错过】
Sep 21 Python
Python使用ffmpy将amr格式的音频转化为mp3格式的例子
Aug 08 Python
python提取照片坐标信息的实例代码
Aug 14 Python
python每5分钟从kafka中提取数据的例子
Dec 23 Python
python求前n个阶乘的和实例
Apr 02 Python
python 画条形图(柱状图)实例
Apr 24 Python
pymongo insert_many 批量插入的实例
Dec 05 Python
68行Python代码实现带难度升级的贪吃蛇
Jan 18 Python
Python调用腾讯API实现人脸身份证比对功能
Apr 04 Python
python使用PyGame绘制图像并保存为图片文件的方法
Apr 24 #Python
python使用PIL缩放网络图片并保存的方法
Apr 24 #Python
python使用Tkinter显示网络图片的方法
Apr 24 #Python
Python中最常用的操作列表的几种方法归纳
Apr 24 #Python
在Python中使用lambda高效操作列表的教程
Apr 24 #Python
使用Python的判断语句模拟三目运算
Apr 24 #Python
Python的字典和列表的使用中一些需要注意的地方
Apr 24 #Python
You might like
js实现的网站首页随机公告随机公告
2007/03/14 Javascript
javascript英文日期(有时间)选择器
2007/05/02 Javascript
User Scripts: Video Download by User Scripts
2007/05/14 Javascript
如何实现动态删除javascript函数
2007/05/27 Javascript
ppk谈JavaScript style属性
2008/10/10 Javascript
javascript之通用简单的table选项卡实现(二)
2010/05/09 Javascript
浅谈关于JavaScript的语言特性分析
2013/04/11 Javascript
A标签触发onclick事件而不跳转的多种解决方法
2013/06/27 Javascript
js 控制页面跳转的5种方法
2013/09/09 Javascript
jQuery弹出层插件Lightbox_me使用指南
2015/04/21 Javascript
Javascript数组Array基础介绍
2016/03/13 Javascript
Bootstrap每天必学之轮播(Carousel)插件
2016/04/25 Javascript
Vuejs第十篇之vuejs父子组件通信
2016/09/06 Javascript
浅析从vue源码看观察者模式
2018/01/29 Javascript
vue自定义全局组件(自定义插件)的用法
2018/01/30 Javascript
浅析node应用的timing-attack安全漏洞
2018/02/28 Javascript
Vue下滚动到页面底部无限加载数据的示例代码
2018/04/22 Javascript
通过jquery toggleClass()属性制作文章段落更改背景颜色
2018/05/21 jQuery
一个简单的node.js界面实现方法
2018/06/01 Javascript
jQuery+Datatables实现表格批量删除功能【推荐】
2018/10/24 jQuery
8 个有用的JS技巧(推荐)
2019/07/03 Javascript
JS实现音乐钢琴特效
2020/01/06 Javascript
Python类的专用方法实例分析
2015/01/09 Python
使用sklearn的cross_val_score进行交叉验证实例
2020/02/28 Python
纯html5+css3下拉导航菜单实现代码
2013/03/18 HTML / CSS
Banggood官网:面向全球客户的综合商城
2017/04/19 全球购物
保加利亚服装和鞋类购物网站:Bibloo.bg
2020/11/08 全球购物
秋季红领巾广播稿
2014/01/27 职场文书
竞聘报告优秀范文
2014/11/06 职场文书
学前班语言教学计划
2015/01/20 职场文书
六一领导慰问欢迎词
2015/01/26 职场文书
2015年社区中秋节活动总结
2015/03/23 职场文书
读《教育心理学》心得体会
2016/01/22 职场文书
导游词之河姆渡遗址博物馆
2019/10/10 职场文书
Mysql效率优化定位较低sql的两种方式
2021/05/26 MySQL
浅谈resultMap的用法及关联结果集映射
2021/06/30 Java/Android