Я пытаюсь понять функцию matlab, которая используется для создания спектрограммы из файла .wav, но я не уверен, что означают все переменные в коде.
function S = spectrogram_proj(x,L,NFFT,step,Fs)
N=length(x);
K=fix((N-L+step)/step);
w=hanning(L);
time=(1:L);
N2=NFFT/2+1;
S=zeros(K,N2);
for k=1:K
xw=x(time).*w;
X=fft(xw,NFFT);
X1=X(1:N2);
S(k,1:N2)=X1.*conj(X1);
time=time+step;
end
end
Я использую [x, Fs] = audioread ('filename.wav') для чтения в файле .wav. Я знаю, что шаг - это размер шага, используемый между последовательными значениями. Я не уверен, что означают L и NFFT. Спасибо за вашу помощь!