Allora, devo prendere in imput un wave, e per ogni sezione da 512 samples dare come risultato l'energia di 8 bande di frequenza a scelta (nella trasf di fourier).
ps è necessario usare le funzioni di Voicebox
Allora io ho usato readwave, poi per dividere in 8 sicuramente ho sbagliato perchè ho scritto
[y,fs,wmode,fidx]=readwav('piano.wav','r',-1,0);
left=y(:,1);
frames=enframe(left, 512);
è che non so cosa mettere...
e infine ho altri dubbi: ho usato zoomfft perchè in teoria dovrebbe fare il dovuto:
% ZOOMFFT DFT evaluated over a linear frequency range Y=(X,N,M,S,D)
% Inputs:
% x vector (or matrix)
% n frequency increment is fs/n [default n=length(x)]
% m mumber of output points is floor(m) [default m=n]
% s starting frequency is s*fs/n [default s=0]
% d dimension along which to do fft [default d=first non-singleton]
%
allora ho scritto
frames=transpose(frames);
u = zoomfft(frames,10,1,0,1);
u=u.*conj(u);
ma non plotta NULLA e sono disperato... qualcuno può aiutarmi a capire cosa sbaglio?