Playing Sounds
2018-08-04 本文已影响3人
庵下桃花仙
通过调用pygame.mixer.Sound()
构造函数来创建一个pygame.mixer.Sound
对象(我们将简称为Sound对象)。它需要一个字符串参数,即声音文件的文件名。Pygame可以加载WAV,MP3或OGG文件。
要播放此声音,请调用Sound对象的play()
方法。如果要立即停止播放Sound对象,请调用stop()
方法。将停止()方法没有参数。
soundObj = pygame.mixer.Sound('beep.wav')
soundObj.play()
import time
time.sleep(1) # wait and let the sound play for 1 second
soundObj.stop()
调用play()
后程序继续执行; 在继续下一行代码之前,它不会等待声音完成播放。
当玩家受到伤害或收集硬币时,声音对象有助于游戏效果。也可以添加背景音乐。Pygame一次只能加载一个音乐文件在后台播放。要加载背景音乐文件,请调用pygame.mixer.music.load()
函数并将其传递给声音文件的字符串参数以进行加载。该文件可以是WAV,MP3或MIDI格式。
要开始播放加载的声音文件作为背景音乐,请调用pygame.mixer.music.play(-1,0.0)
函数。在-1参数,使背景音乐循环播放。如果将其设置为0或更大的整数,则音乐将仅循环该次数而不是永久循环。在0.0 秒开始播放。如果你传递一个更大的整数或浮点数,音乐将开始播放声音文件很多秒。例如,如果您为第二个参数传递13.5,则声音文件将从开头的13.5秒开始播放。
要立即停止播放背景音乐,请调用pygame.mixer.music.stop()
函数。这个函数没有参数。
# Loading and playing a sound effect:
soundObj = pygame.mixer.Sound('beepingsound.wav')
soundObj.play()
# Loading and playing background music:
pygame.mixer.music.load(backgroundmusic.mp3')
pygame.mixer.music.play(-1, 0.0)
# ...some more of your code goes here...
pygame.mixer.music.stop