概述
import wave
import matplotlib.pyplot as plt
import numpy as np
import os
f=wave.open('test2/music_high.wav')
#读取格式信息
params=f.getparams()
nchannnels,sampwidth,framerate,nframes = params[:4]
print(framerate)
#读取波形数据
strData = f.readframes(nframes)
#将字符串转换为16位整数
waveData = np.frombuffer(strData,dtype=np.int16)
#幅值归一化
waveData = waveData*1.0/(max(abs(waveData)))
#计算音频的时间
time = np.arange(0,nframes)*(1.0/framerate)
#绘图
plt.plot(time,waveData)
plt.xlabel("Time(s)")
plt.ylabel("Amplitude")
plt.title("Single channel waveData")
plt.show()
最后
以上就是可靠火为你收集整理的Python处理音频并画出时域波形的全部内容,希望文章能够帮你解决Python处理音频并画出时域波形所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复