I don't know what is frame blocking but to get the DFT of a sound file
x = wavread('File_name.wav');
X = fft(X, fs);
If you mean that the frame blocking is the framing of a speech signal, here you can only get the STFT (Short Time Fourier transform) which is the fft per frame. There is no DFT for the whole speech signal because it has time varying characteristics.
rfft calculates fft for real data, speech signals are of course real data. As I said, Fourier transform is applied per frame were a phoneme typically of 100 ms has constant vocal tract transfer function. The entire speech signal has a meaningless fft.
As you mentioned before, that fft only works at certain period such as 100ms and the rest of second won't be counted.
And you also said that fft can do per frame. Let say, after i have framing a speech signal, and it's produce 10 frames where each frame are less than 100ms, how can i do the fft for each 10 frames that i already have?
u mean what the code u should use?
In your case, u'll have 10 Fourier transforms, each one show you the vocal tract frequency response for a certain acoustic sound.
Speech = wavread('file.wav');
% for fs = 8000, let the frame length be 160 sample which is 20 ms
Speech is already a vector ! check the arguments of buffer, make sure it is speech and not Speech(j) for example. If still not working post it here and I'll check.
My codes are going like this. I already make some replacement from the code you given to me and the result is no error at all. Ahmed, how to comfirm that the code was produced a correct answer?
y = wavread('user.wav');
% for fs = 8000, let the frame length be 160 sample which is 20 ms
Y = buffer(y,160);
You have to print the vector y in command prompt, and see the first 160 elements, then see the first column of the buffered result Y to ensure they're the same. there is no way to check that fourier transform is correct, but fft will always work
So far, i already done speech processing until i got 13th coefficient of mel-frequency.
Now, im loooking to do the recognition part using neural network (MLP). Do you know how to start? i mean the step involve in neural network