def wavwrite(srcfile, fs, training):
try:
mat = io.loadmat(srcfile)
except ValueError:
print('Could not load %s' % srcfile)
return
dat = mat['dataStruct'][0, 0][0]
if ds_factor != 1:
dat = signal.decimate(dat, ds_factor, axis=0, zero_phase=True)
mn = dat.min()
mx = dat.max()
mx = float(max(abs(mx), abs(mn)))
if training and mx == 0:
print('skipping %s' % srcfile)
return
if mx != 0:
dat *= 0x7FFF / mx
dat = np.int16(dat)
winsize = win_dur * 60 * fs
stride = 60 * fs
for elec in range(16):
aud = dat[:, elec]
for win in range(nwin):
dstfile = srcfile.replace('mat', str(win) + '.' + str(elec) + '.wav')
beg = win * stride
end = beg + winsize
clip = aud[beg:end]
audiolab.wavwrite(clip, dstfile, fs=fs, enc='pcm16')
评论列表
文章目录