我正在寻找一种可以使用 python 将多个波形文件组合成一个波形文件并在 linux 上运行的方法。除了默认的 shell 命令行和默认的 python 模块之外,我不想使用任何附加组件。例如,如果我有 a.wav 和 b.wav。我想创建一个 c.wav,它的内容从 a.wav 然后 b.wav 开始。我找到了 wave 模块,我可以打开一个 wave 文件并写入一个新文件。因为我在这个音频世界里真的很新。我仍然不知道该怎么做。下面是我的代码
import struct, wave
waveFileA = wave.open('./a.wav', 'r')
waveFileB = wave.open('./b.wav', 'r')
waveFileC = wave.open('./c.wav', 'w')
lengthA = waveFileA.getnframes()
for i in range(0,lengthA):
waveFileC.writeframes(waveFileA.readframes(1))
lengthB = waveFileB.getnframes()
for i in range(0,lengthB):
waveFileC.writeframes(waveFileB.readframes(1))
waveFileA.close()
waveFileB.close()
waveFileC.close()
当我运行这段代码时,我得到了这个错误:
wave.Error: # channels not specified
请问有人可以帮我吗?