Asked by protosta
on 9 Jun 2013

Hi, Please i need help with this Matlab code. i am using this melcept function for different samples of me saying the word "one" here is my code

Code: [aaaaa1,fs]=wavread('one.wav'); %Read In Sample

a=0.95;

aaaa1=filter([1,-a],1,aaaaa1);

aaa1= melcepst(aaaa1,fs);

i get an output for the different samples of me saying one as 54x12 , 44x12, 50x12, 49x12 please for melcepst is possible to generate the same number of points for each row, i.e. nx12, n is the same for each sample.

here is the link to the description of the melcept function - http://www.ee.ic.ac.uk/hp/staff/dmb/.../melcepst.html

Is there any other way of doing MFCC and changing the number of coefficients. Also if i set the number of coeffcient as 12 should i get one line with 12 points or do i get 12 lines with a lots of points because of the frame blocking?

*No products are associated with this question.*

Answer by Ikra89
on 10 Jun 2013

hi

im using mfcc too for my reseach. I hope this code can help you.

if 1 preEmphasized = filter([1 -.97], 1, input); else preEmphasized = input; end

a=buffer(preEmphasized,frame,overlap,'nodelay'); cols=size(a,2); ceps = zeros(cepstralCoefficients, cols);

what pattern recognition are you using for? may be you can help my problem in here:

Answer by Ikra89
on 10 Jun 2013

just make sure you using same sampling rate, time frame, and overlap

i used sampling rate 11000, time frame 40, overlap 0.5. ceps 13

it will be generate matrix 13x35

here is my fb: http://fb.com/ikra89

Answer by zhang xiufeng
on 8 May 2015

well, i think you don't understand MFCC, the number of the vector depend on the length of your wav file, as you see,12 is the number of cofficients of every single frame, but a wav file can be divided into diffrent number of frame,so you need formalise the file, then you can get the same size of vector.

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi test

Learn moreOpportunities for recent engineering grads.

Apply Today
## 0 Comments