【发布时间】:2019-05-09 12:01:44
【问题描述】:
我正在尝试在不加载其内容的情况下将数据附加到声音文件(因为它可能有千兆字节的数据),我目前正在使用 pysoundfile 库,我已经找到了一种用于 wave64 的方法,但是在 wav 中,由于某种原因它会引发错误。
根据 pysoundfile 文档,当使用文件描述符打开 SoundFile 时,它应该在不截断的情况下写入,这就是我目前正在做的事情
fd = open('foo.wav',mode='ab')
with sf.SoundFile(fd, mode = 'w', samplerate = self._samplerate,channels = self._channels, format = 'wav') as wfile:
wfile.seek(0,sf.SEEK_END)
wfile.write(self._samples)
wfile.close()
fd.close()
当我使用 wave 文件类型时,会出现以下错误:
RuntimeError: Error opening <_io.BufferedWriter name='../datasets/emddf_clean/qcoisa.wav'>: Unspecified internal error.
但是使用 w64 格式的文件,它会以某种方式工作...... 如果有人能照亮我,那将是惊人的, 提前致谢!
【问题讨论】: