pygame简易音乐播放
来源:互联网 发布:批量条码生成软件 编辑:程序博客网 时间:2024/06/06 06:38
pygame简易音乐播放
今天写了一个简易的音乐播放程序,能实现鼠标左击播放一种音效,右击播放另一种音效,按下空格键可以暂停和播放背景音乐。新学了两个类。一个是pygame.mixer.Sound类,用于播放音效,官方文档介绍:http://www.pygame.org/docs/ref/mixer.html#pygame.mixer.Sound.set_volume; 另一个是pygame.mixer.music类。用于播放背景音乐,官方文档介绍:http://www.pygame.org/docs/ref/music.html。
music类中几个常用的方法:1.pygame.mixer.music.load(filename), 载入背景音乐,最好载入ogg格式的音频,mp3格式的音频受限制 2.pygame.mixer.music.play()播放背景音乐,3.pygame.mixer.music.stop()关闭音乐播放,4,pygame.mixer.music.pause()暂停音乐播放 5,pygame.mixer.music.unpause()恢复音乐播放6pygame.mixer.music.set_volume(value),调节声音度,value的值为 0 - 1.
Sound类的方法和music方法类似,就不一一介绍了,详情看pygame官网介绍
简易播放器功能实现顺序:创建窗口并填充背景色 -> 播放背景音乐 -> 载入播放和暂停图片 -> 设置空格暂停播放背景音乐并刷新相应的图片 -> 设置鼠标左击和右击切换音乐
代码如下:
# -*- coding: utf-8 -*-# @Author: Four Leaf Clover# @Date: 2017-11-11 09:27:37# @Last Modified by: Administrator# @Last Modified time: 2017-11-11 12:05:45import pygameimport sysfrom pygame.locals import *# pygame和pygame.mixer初始化pygame.init()pygame.mixer.init()# 设置及播放背景音乐pygame.mixer.music.load("bg_music.ogg")pygame.mixer.music.set_volume(0.2)# 设置音量pygame.mixer.music.play()# 播放音乐# 设置两种不同的音效left_sound = pygame.mixer.Sound("loser.wav")left_sound.set_volume(0.2)right_sound = pygame.mixer.Sound("laugh.wav")right_sound.set_volume(0.2)# 设置界面窗口bg_size = width, height = 300, 200bg_rgb = (255, 255, 255)screen = pygame.display.set_mode(bg_size)pygame.display.set_caption("Music - Four Leaf Clover")# 创建设置帧率对象clock = pygame.time.Clock()# 创建播放和暂停图片surface对象play_image = pygame.image.load("play.png").convert_alpha()pause_image = pygame.image.load("puse.png").convert_alpha()# 获取播放和暂停矩形框pause_rect = pause_image.get_rect()pause_rect.left, pause_rect.top = (width - pause_rect.width) // 2, (height - pause_rect.height) // 2# 定义播放标志位pause = Falsewhile True:# 查找队列事件for event in pygame.event.get():# 查找点击关闭窗口事件if event.type == QUIT:sys.exit()# 查找鼠标左右击事件if event.type == MOUSEBUTTONDOWN:# 检测鼠标左击是否按下if event.button == 1:left_sound.play()# 检测鼠标右击是否按下if event.button == 3:right_sound.play()# 检测键是否按下if event.type == KEYDOWN:# 检测是否为空格键按下if event.key == K_SPACE:pause = not pause# 填充界面背景screen.fill(bg_rgb)# 空格控制播放和暂停,并显示相应的图片if pause:pygame.mixer.music.pause()screen.blit(pause_image, pause_rect)else:pygame.mixer.music.unpause()screen.blit(play_image, pause_rect)# 刷新缓冲区图像pygame.display.flip()# 控制帧率为30帧clock.tick(30)
阅读全文
0 0
- pygame简易音乐播放
- pygame实现简易音乐播放器
- 播放音乐:pygame.mixer.music
- 简易音乐播放器
- 简易音乐播放器
- 简易音乐播放器
- 简易的音乐播放
- 用python播放音乐--pygame package
- pygame+threading编写音乐播放器
- 简易的音乐播放器
- iOS 简易音乐播放界面
- android简易音乐播放器
- MFC简易音乐播放器
- 自定义简易音乐播放器
- 简易的音乐播放器
- 简易音乐播放器(本地播放)
- 简易音乐播放器,media类
- 苹果系统简易音乐播放器
- record
- maven项目在tomcat启动的时候报java.lang.ClassNotFoundException
- Keil MDK下如何设置非零初始化变量
- Spring SpringMVC以及Mybatis结合
- sts ide 启动tomcat提示45秒超时
- pygame简易音乐播放
- 机器学习中的数学(5)-强大的矩阵奇异值分解(SVD)及其应用
- 欢迎使用CSDN-markdown编辑器
- AWT事件处理基础
- Busy yesterday...
- 微信小程序本地开发环境配置-php后端
- CodeBlocks调试教程
- 机器学习学习笔记1-机器学习简介
- libevent多线程使用事项