我们知道,图片,文字,音频都可以转成数据存储在内存中,下面我给大家分享一个音频文件转义成列表内存,然后俩个列表对比相似度,来判断音频文件间的对比。话不多说,代码伺候;
#-*-coding:utf-8-*-
import os
import re
import wave
import numpy as np
import pyaudio
#音频比对子体时间小于母体
class Voice()
def __init__(self):
self.name=[(x,x,x,x).....] #音频文件转码后
def loaddata(self,filepath):
if type(filepath)!=str:
print('文件的路径不正确')
return False
p1=re.compile('\.wav')
if p1.findall(filepath) is None:
print('请确保文件的格式属于wav')
return False
try:
f=wave.open(filepath,'rb')
parmas=f.getparams()
self.nchannels,self.sampwidth,self.framerate,self.nframes=parmas[:4]
str_data=f.readframes(self.nframes)
self.wave_data=np.fromstring(str_data,dtype=np.short)
self.wave_data=self.wave_data.T
f.close()
self.name=os.path.basename(filepath) #记录下文件名
return True
except:
print(‘File error!’)