我想规范化Python中wave包中read函数的结果。我想,应该把它除以32767。但当我将结果与MATLAB的结果进行比较时,除以32768得到了更好的结果。所以理想情况下,它应该除以32768吗?在
Python代码:
a = read('male 1.wav')
data = np.array(a[1],dtype=float)
dataDivide32768 = data/32768
dataDivide32767 = data/32767
print(dataDivide32768)
print(dataDivide32767)
结果:
^{pr2}$MATLAB代码:
filename = 'male 1.wav';
[y,Fs] = wavread(filename);
结果:
[-3.05175781250000e-05 6.10351562500000e-05 9.15527343750000e-05 ...]
假设wav文件是16位整数,范围是[-32768,32767],因此除以32768(2^15)将得到正确的twos补码范围[-1,1-2^-15]
相关问题 更多 >
编程相关推荐