www.pudn.com > voiceprocessingtoolbox.rar > fftFormant01.m


% This example demos the effect of FFT for purely periodic signals 
[y, fs]=wavread('welcome.wav'); 
signal=y(2047+15:2126+15);		% A full fundamental period 
zeros=0*signal; 
signal=[signal; zeros; zeros; zeros; zeros; zeros]; 
%signal=y(2047:2047+512-1); 
%signal=signal.*hamming(length(signal)); 
[mag, phase, freq, powerDb]=fftOneSide(signal, fs, 1); 
lMaxIndex=find(localMax(mag)); 
subplot(3,1,2); 
line(freq(lMaxIndex), powerDb(lMaxIndex), 'color', 'r', 'marker', 'o', 'linestyle', 'none'); 
fprintf('F1 = %f Hz\n', freq(lMaxIndex(1))); 
fprintf('F2 = %f Hz\n', freq(lMaxIndex(2))); 
fprintf('F3 = %f Hz\n', freq(lMaxIndex(3)));