def __init__(self, source, start=0, end=None):
if type(source) is bytes:
in_wav = wave.open(io.BytesIO(source))
else:
in_wav = wave.open(source, "rb")
self.framerate = in_wav.getframerate()
self.channels = in_wav.getnchannels()
self.samplewidth = in_wav.getsampwidth()
in_wav.setpos(int(start * self.framerate))
if end is None:
end = (in_wav.getnframes() - start / self.framerate)
self.raw = in_wav.readframes(int((end - start) * self.framerate))
in_wav.close()
评论列表
文章目录