【发布时间】:2021-03-14 03:16:27
【问题描述】:
我正在使用 pyaudio 库在 python 中编写一个简单的播放器,具有一些基本功能,例如开始播放、暂停和开始位置。 我开始研究文档的第一个示例:
import pyaudio
import wave
import sys
CHUNK = 1024
if len(sys.argv) < 2:
print("Plays a wave file.\n\nUsage: %s filename.wav" % sys.argv[0])
sys.exit(-1)
wf = wave.open(sys.argv[1], 'rb')
# instantiate PyAudio (1)
p = pyaudio.PyAudio()
# open stream (2)
stream = p.open(format=p.get_format_from_width(wf.getsampwidth()),
channels=wf.getnchannels(),
rate=wf.getframerate(),
output=True)
# read data
data = wf.readframes(CHUNK)
# play stream (3)
while len(data) > 0:
stream.write(data)
data = wf.readframes(CHUNK)
# stop stream (4)
stream.stop_stream()
stream.close()
# close PyAudio (5)
p.terminate()
它工作得很好,但我真的不知道在哪里添加帧偏移以在特定帧开始播放。 我看到有不同的库可用,但是 PyAudio 允许我从文件中实时读取原始数据,我需要这个功能。 你有什么建议吗?
【问题讨论】: