ANALISIS FFT,
LOWPASS FILTER DAN RUNNING MEAN SUARA (*.WAV) DENGAN MENGGUNAKAN MATLAB
Muhammad Idris
Departemen Ilmu dan
Teknologi Kelautan
Institut Pertanian
Bogor
Dalam analisis suara terkadang kita
tidak kita membutuhkan FFT, Low Pass Filter dan Running Mean. Berikut ini
adalah syntak Matlab untuk menampilkan grafik FFT, Low Pass Filter dan Running
Mean (untuk suara ekstensi *.wav) untuk analisis suara:
if ~ispc
dsp_error('windowsOnly', ...
'This demo is supported only on
Windows(R) platforms.');
end
frameSize = 1024;
hfileIn =
signalblks.MultimediaFileReader(which('idrissesudah.wav'), ...
'AudioOutputDataType', 'double');
fileInfo = info(hfileIn);
Fs = fileInfo.AudioSampleRate;
hfft = signalblks.FFT;
hmean = signalblks.Mean('RunningMean', true);
hmin = signalblks.Minimum('RunningMinimum', true);
hmax = signalblks.Maximum('RunningMaximum', true);
hfilter =
signalblks.DigitalFilter(...
'TransferFunction', 'FIR (all zeros)', 'Numerator', fir1(10,0.3));
haudioOut =
signalblks.AudioPlayer('SampleRate', Fs, ...
'QueueDuration', 0.5);
s = hfigsstats(frameSize, Fs);
while
~isDone(hfileIn)
sig = step(hfileIn);
fftoutput = step(hfft, sig);
fftoutput = fftoutput(1:512);
meanval = step(hmean, sig);
minimum = step(hmin, sig);
maximum = step(hmax, sig);
filteroutput = step(hfilter, sig);
filteroutputfft = step(hfft, filteroutput);
step(haudioOut, sig);
s = plotstatsdata(s, minimum, maximum,
sig.', meanval, fftoutput, filteroutputfft);
end
pause(2);
Contoh tampilan grafik :
Semoga bermanfaat
0 komentar:
Posting Komentar