Pygame无法打开音频文件
import pygame, time
from pygame.locals import *
soundObj = pygame.mixer.Sound('beeps.wav')
soundObj.play()
time.sleep(1) # wait and let the sound play for 1 second
soundObj.stop()
然后它出现了这个错误:
Traceback (most recent call last):
File "C:/Users/Jauhar/Desktop/Python/sounds.py", line 4, in <module>
soundObj = pygame.mixer.Sound('beeps.wav')
pygame.error: Unable to open file 'beeps.wav'
beeps.wav 文件和代码所在的 python 文件在同一个文件夹里。
我不明白为什么它不工作!
8 个回答
0
试着记录一下这些信息,你可能会找到问题所在。
import os
os.getcwd() # Log this line.
soundObj = pygame.mixer.Sound('beeps.wav')
这段信息应该能告诉你,当你的应用程序试图访问声音文件时,它在查找哪个文件夹。你可能会发现它是在你游戏文件夹的最上层。
12
Pygame(至少是2.9版本)不支持32位浮点的WAV音频文件。你需要把它重新编码成16位有符号的WAV格式(比如可以用Audacity这个软件来做)。
9
在使用pygame这个库之前,你必须先初始化你要用的模块,或者直接初始化整个pygame。
pygame.mixer.pre_init(44100, 16, 2, 4096) #frequency, size, channels, buffersize
pygame.init() #turn all of pygame on.
在你做任何pygame的事情之前,先做好这些。我强烈推荐这样做。