概述
我知道这个音频数据如果立体声存储为多维数组,如
audiodata[[left right] [left right] ... [left right]]
然后我使用此方法通过(右)/ 2创建一个新的单声道音频数据阵列
def stereoToMono(audiodata) newaudiodata = [] for i in range(len(audiodata)): d = (audiodata[i][0] + audiodata[i][1])/2 newaudiodata.append(d) return np.array(newaudiodata,dtype='int16')
wavfile.write(newfilename,sr,newaudiodata)
我究竟做错了什么?
audiodata = audiodata.astype(float)
其次,不要按元素编写Python代码元素;矢量化它:
d = (audiodata[:,0] + audiodata[:,1]) / 2
甚至更好
d = audiodata.sum(axis=1) / 2
这将比您编写的逐个元素循环快得多.
总结
以上是编程之家为你收集整理的在Python中立体声到单声道wav全部内容,希望文章能够帮你解决在Python中立体声到单声道wav所遇到的程序开发问题。
如果您也喜欢它,动动您的小指点个赞吧