代码拉取完成,页面将自动刷新
import numpy as np
import librosa.display
import matplotlib.pyplot as plt
times = librosa.get_duration(filename='aa.wav')
y, sr = librosa.load('aa.wav',sr=8000,offset=0.0,duration=None)
x=np.arange(0,times,1/sr)
plt.plot(x,y)
plt.xlabel('times')
plt.ylabel('amplitude')
plt.title("aa.wav",fontsize=12,color='black')
plt.show()
def frame(x,lframe,mframe):
signal_length =len(x)
fn = (signal_length-lframe)/mframe
fn1 = np.ceil(fn)
fn1 = int(fn1)
numfillzero = (fn1*mframe+lframe)-signal_length
fillzeros = np.zeros(numfillzero)
fillsignal = np.concatenate((x,fillzeros))
d = np.tile(np.arange(0,lframe),(fn1,1))+np.tile(np.arange(0,fn1*mframe,mframe),(lframe,1)).T
d = np.array(d,dtype=np.int32)
signal = fillsignal[d]
return(signal,fn1,numfillzero)
lframe = int(sr*0.025)
mframe = int(sr*0.001)
endframe,fn1,numfillzero = frame(y,lframe,mframe)
hanwindow = np.hanning(lframe)
signalwindow=endframe[0]*hanwindow
x1 = np.arange(0,lframe,1)
x2 = np.arange(0,lframe/sr,1/sr)
plt.figure()
plt.plot(x1,signalwindow)
plt.xlabel('points')
plt.ylabel('wave')
plt.title('aa firstframe hanningwindow wave',fontsize=12,color='black')
plt.show()
plt.figure()
plt.plot(x2,endframe[0])
plt.xlabel('times') #x轴
plt.ylabel('wave') #y轴
plt.title('aa firstframe hanningwindow wave',fontsize=12,color='black')
plt.show()
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。