版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处! https://blog.csdn.net/huplion/article/details/81040734
1)scipy
from scipy.io import wavfile
import numpy as np
sample_rate, sig = wavfile.read('new.wav')
print("采样率: %d" % sample_rate)
print(sig)
if sig.dtype == np.int16:
print("PCM16位整形")
if sig.dtype == np.float32:
print("PCM32位浮点")
输出如下:
采样率: 16000
[-1466 -733 -733 ... 2199 1832 1466]
PCM16位整形
2)pysoundfile
import soundfile as sf
sig, sample_rate = sf.read('new.wav')
print("采样率:%d" % sample_rate)
print(sig)
输出如下:
采样率:16000
[-0.04473877 -0.02236938 -0.02236938 ... 0.06710815 0.0559082
0.04473877]
3)wave
不推荐此库
————————————————分割线———————————————–
WAV格可以用16位整形或者32位浮点编码
scipy可以通过输出数据的 dtype 格式来判断
pysoundfile 全部自动转换成float32来输出