为什么我的PyGame调音台不能播放声音?

2.7中的我的PyGame调音台不能使用声音选项。 我可以使它与mixer.music一起工作,但不能和mixer.sound一起使用mixer.sound,它会产生一个小的滴答声,然后停下来。 码:

import pygame pygame.mixer.init(frequency=22050, size=-16, channels=2, buffer=4096) song = pygame.mixer.Sound("song.mp3") pygame.mixer.Sound.play(song) 

没有错误,它只是不会发挥,并给出一个小滴答声的噪音。 在Windows 7-x64顺便说一句。

通常,Pygame不会播放MP3文件。 你可以测试看.wav和.ogg文件是否会首先播放,以确保你的代码是正确的(根据你粘贴的内容,它看起来是正确的)。 我建议把你的mp3的声音转换成pygame的ogg。

这可以很容易地解决,因为你的歌曲文件应该加载为音乐,而不是一个正常的声音。 因此,下面的代码使它完美地工作:

 import pygame pygame.mixer.init(frequency=22050, size=-16, channels=2, buffer=4096) pygame.mixer.music.load("song.mp3") pygame.mixer.music.play() 

你刚刚创建了一个名为歌曲的对象。

而不是“pygame.mixer.Sound.play(歌曲)”试试这个:

song.play()

Pygame确实播放MP3文件。 我有同样的问题,但我发现解决方案:

如果您将mp3文件保存为“filename.mp3”,并且自己写下了.mp3文件扩展名,则pygame的pygame.mixer.music.load()函数中的文件名必须写为“filename.mp3.mp3” ,因为python希望你添加.mp3。 有时.mp3已经包含在文件名中,如果你手动保存。

因此,试试这个: pygame.mixer.music.load('filename.mp3.mp3')