这是问题的情况下:我有一个DTMF信号在wav格式,我必须确定它已编码的数字序列。 我必须这样做,利用Matlab软件快速傅立叶变换,这意味着我用读wav文件wavread
,并确定各由40毫秒的沉默或多个分隔号。
这是我到目前为止的代码:
[signal, fs] = wavread( 'C:\Temp\file.wav' ); % here, fs = 8000Hz
N = 512;
T = 1/fs;
L = length( signal )
samples = fs / 1000 * 40
windows = floor(L / samples)
t = (1:L)/fs;
figure(1), plot(t, signal);
以下是该figure 1
的样子,也就是从WAV读取的信号:
如何才能有效地我的信号分割成块,这样我可以再做一个FFT在每个10件seperately解码相应的号码?