Can someone pls help me with this code. (mfcc)
    2 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    Gaurav Sharma
 am 23 Nov. 2018
  
    
    
    
    
    Kommentiert: hanif omar
 am 19 Jan. 2021
            whenever I am trying to run the code it is throwing an error i.e. =>
"Undefined function or variable 'melfilter'.
Error in mfcc (line 29)
filterBankMat = melfilter(N, Fs,@hamming);                % matrix for a mel-spaced filterbank
Error in phase1 (line 17)
 M = mfcc(y, Fs);"
% ============================================================
CODE: 
function c = mfcc(y, Fs)
% MFCC Calculate the mel frequencey cepstrum coefficients (MFCC) of a signal
%
% Inputs: 
%       y       : speech signal data
%       Fs      : sample rate in Hz of the speech signal data y
%
% Outputs:
%       c       : MFCC output, each column contains the MFCC's for one speech frame
N = 256;                        % frame size
M = 100;                        % inter frame distance
len = length(y);
numberOfFrames = 1 + floor((len - N)/double(M));
mat = zeros(N, numberOfFrames); % vector of frame vectors
for i=1:numberOfFrames
    index = 100*(i-1) + 1;
    for j=1:N
        mat(j,i) = y(index);
        index = index + 1;
    end
end
hamW = hamming(N);              % hamming window
afterWinMat = diag(hamW)*mat;   % square diagonal matrix
freqDomMat = fft(afterWinMat);  % FFT into freq domain
filterBankMat = melfilter(20,N, Fs);                % matrix for a mel-spaced filterbank      [HERE IT IS THROWING ERROR].
nby2 = 1 + floor(N/2);
ms = filterBankMat*abs(freqDomMat(1:nby2,:)).^2; % mel spectrum
c = dct(log(ms));                                % mel-frequency cepstrum coefficients
c(1,:) = [];                                     % exclude 0'th order cepstral coefficient
end
1 Kommentar
Akzeptierte Antwort
Weitere Antworten (1)
  Jacob Shulman
      
 am 23 Nov. 2018
        if melfilter is a matrix you want to use then it must be an input to the function or be created and defined wihtin the function. functions create different new workspaces with new variables.
0 Kommentare
Siehe auch
Kategorien
				Mehr zu Deep Learning Toolbox finden Sie in Help Center und File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!