Traitement d'un fichier.wav

swiso Messages postés 78 Statut Membre -  
swiso Messages postés 78 Statut Membre -
Bonjour =) !
je suis débutant en Matlab et j'essaie de faire un petit programme qui affiche l'audiogramme et calcul la FFT d'un .wav ainsi que l'affichage de son spectrogramme mais j'ai des problèmes lors de l'exécution je sais pas prkoi ????
merci pr votre aide =)

1 réponse

swiso Messages postés 78 Statut Membre
 
function analyse(file)
[y, fs] = wavread('da.wav');
subplot(3,1,1), plot(y)
title('Laudiogramme de file')



N= 4096;%4096 % 2^12
d = fft(y(1:N))/4096;
p = 2*abs( d(2:N/2));
f = (1:N/2-1)*fs/4096;
subplot(3,1,2)


semilogy(f,p)
axis([0 4000 10^-4 1])
title('la FFT de file' ) % il m'affiche la fenêtre de FFT vide


subplot(3,1,3)
specgram(y,512,fs)
colorbar
title('le spectrogramme file')
end


%***********************************************************************************%


function [f0] = det_pitch(file,c, fs)
[y,fs]=wavread('bi.wav');

c = spCepstrum(y, fs,'hamming'); % il me donne une erreur dans cette ligne
ms2=floor(fs*0.002); % 2ms
ms20=floor(fs*0.02); % 20ms
[maxi,idx]=max(abs(c(ms2:ms20)));
f0 = fs/(ms2+idx-1);
end
0