加载声音的Pygame错误:无法识别模块格式

时间:2011-12-05 20:03:13

标签: python pygame

我在尝试加载和播放pygame中的声音时遇到了问题。大多数人似乎都遇到了MP3问题,但由于某种原因,我甚至无法获得玩耍。

>>> f=open('menuscreen.wav',"rb")
>>> pygame.mixer.init()
>>> pygame.mixer.music.load(f)
Traceback (most recent call last):
  File "<string>", line 1, in <fragment>
pygame.error: Module format not recognized

,这也不起作用:

>>> k = pygame.mixer.Sound('menuscreen.wav')
>>> pygame.mixer.init()
>>> pygame.mixer.music.load(k)
Traceback (most recent call last):
  File "<string>", line 1, in <fragment>
pygame.error: Couldn't read from RWops

,这也不是:

>>> import pygame
>>> pygame.mixer.init()
>>> pygame.mixer.music.load('menuscreen.wav')
Traceback (most recent call last):
  File "<string>", line 1, in <fragment>
pygame.error: Unable to load WAV file

我正在使用2.7.2和pygame 1.9.1

2 个答案:

答案 0 :(得分:6)

您应该通过将文件名作为第一个参数传递来加载文件。这适用于我的系统(相同的python和pygame版本)就好了:

>>> import pygame
>>> pygame.mixer.init()
>>> pygame.mixer.music.load('filename.wav')
>>> pygame.mixer.music.play()

HTH!

答案 1 :(得分:0)

为避免编写每一行代码pygame.mixer 您也可以这样做:

from pygame import mixer
mixer.init()
mixer.music.load('songX.mp3')
mixer.music.play()

(作为@Mac答案的缩写)