import pyaudio
import wave
chunk = 1024
wf = wave.open('yes.mp3', 'rb')
p = pyaudio.PyAudio()
stream = p.open(
format = p.get_format_from_width(wf.getsampwidth()),
channels = wf.getnchannels(),
rate = wf.getframerate(),
output = True)
data = wf.readframes(chunk)
while data != '':
stream.write(data)
data = wf.readframes(chunk)
stream.close()
p.terminate()
无论我如何设置这个,在尝试多种方法时,我似乎在终端中不断收到以下错误:
raise Error, 'file does not start with RIFF id'
我会使用pyglet但是媒体和所有其他模块都没有检测到,即使我能够导入pyglet。
有任何帮助吗?
答案 0 :(得分:1)
您正在使用wave
尝试打开非wav
的文件。相反,您正在尝试打开mp3
文件。 wave
模块只能打开wav
个文件,因此您需要将mp3
转换为wav
。以下是如何使用pyglet播放mp3
文件:
import pyglet
music = pyglet.resource.media('music.mp3')
music.play()
pyglet.app.run()
这比你尝试的方法简单得多。你用pyglet得到了什么错误?