我正在尋找一種方法,可以將多個wave文件合併成一個使用python的wave文件並在linux上運行它。我不想在默認的shell命令行和默認的python模塊之外使用任何添加。例如,如果我有a.wav和b.wav。我想創建一個以a.wav和b.wav中的內容開始的c.wav。 我已經找到了wave模塊,可以打開一個wave文件並寫入一個新文件。因爲我是這個音頻世界的新手。我仍然無法弄清楚如何去做。下面是我的代碼Linux和python:將多個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
請任何一個能幫助我嗎?
請發佈它的完整回溯,它死在哪一行? – Perkins