2013-07-04 40 views
1

我试图使用pygame的背景音乐播放器(pygame.mixer.music.load('music.mp3'),pygame.mixer.music.play(-1,45.0))来玩背景音乐,但是当我运行模块时,运行窗口几乎立即停止响应。我的程序中有一个停止位置,最后,我将mp3放在与python文件相同的文件夹中,并且FPS有限。我很确定代码是正确的。除了普通的电脑不舒服之外,我想不出任何其他的东西,这可能会出错。pygame声音文件崩溃IDLE

+1

告诉我们你的代码 – Serial

+0

你可以尝试一个ogg文件。 '请注意,MP3支持是有限的......考虑使用OGG代替。“然后你就会知道问题是文件还是pygame的有限支持。 – pmoleri

+0

代码总是有帮助的;)我用一个mp3文件做了一段时间,但是我没有在手边实现,否则我会给你一个例子。今天晚些时候可能会写出来。 mp3文件的路径是否正确? – Cribber

回答

0

在Pygame中使用mp3文件来播放声音效果不是很好。如果您想要背景音乐,请使用免费的音频转换器(Audacity,也许?)并将该音乐文件转换为OGG文件。您需要考虑的另一件事是,您应该记住将该声音文件放在与Python/Pygame脚本相同的文件夹/目录中。另外,您不一定需要一个频道才能播放音乐。

beep1 = "beep1.wav" 
beep2 = "beep2.wav" 
beep3 = "beep3.wav" 
beep4 = "beep4.wav" 
beep_list = [beep1, beep2, beep3, beep4] 
beep = random.shuffle(beep_list) 
pygame.mixer.music.load((beep_list[1])) 
pygame.mixer.music.play() 

这是我使用的代码,每当球撞到墙壁时,都会发出哔哔声。也许你可以这样编辑:

bgm = "backgroundmusic.ogg" 
pygame.mixer.music.load((bgm)) 
pygame.mixer.music.play() 

注:.wav文件建议对声音效果,因为WAV文件变得更大一点时,其超过几秒钟。