Debutante en matlab

Signaler
Messages postés
13
Date d'inscription
lundi 22 mars 2010
Statut
Membre
Dernière intervention
16 mai 2011
-
Messages postés
4
Date d'inscription
mardi 25 mai 2010
Statut
Membre
Dernière intervention
21 juin 2010
-
salut, j'ai un projet a realiser sous matlab, j'ai enregistré par ma voix des parole en extension .wav et je sais pas comment ouvrir ou lir ce fichier wav sous matlab ? j'ai en plus de ça de visualiser son signal et tracer son spectre aidez moi svp c'est urgent
merci d'avance

2 réponses

Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
Salut,

Mise a part trouver de l'aide sur des questions et des points de blocages précis, personne ne fera ton projet à ta place.

Sinon pour te donner une première piste regarde ce lien, tu y trouvera tout ce dont tu as besoin pour commencer ton projet :

http://www.music.mcgill.ca/~gary/307/week1/matlab.html

Si t'as d'autres questions hésites pas !

Bon courage le dromois!
Messages postés
4
Date d'inscription
mardi 25 mai 2010
Statut
Membre
Dernière intervention
21 juin 2010
1
Hello,

rien de sorcier...

*Commencer par importer le fichier wav, c-à-d le transformer en matrice:
son= wavread('fichier_son.wav');

*Pour afficher le signal, axe des x gradué en échantillons:
plot(son);

*Pour afficher le signal, axe des x gradué en secondes
figure; %nouveau graphique[b][i]
temps =(0:(length(son)-1))/Fs;/b /i %remplacer Fs par la fréquence d'échantillonnage en Hz, p. ex 44100.
plot(temps,son);
Pour plus d'options d'affichage, taper help plot

*Pour éouter le son directement le son sous Matlab, en partant du principe qu'il est échantillonné à 44.1kHz
wavplay(son,44100);

*pour écouter le son au ralenti, par exemple 8 fois moins vite :
wavplay(son,44100/8);

*pour afficher le spectre :
[b][i]L=length(son);
Fs=44100;
Y=fft(son,2^nextpow2(L))/L;
freq=Fs/2*linspace(0,1,2^nextpow2(L)/2);
figure; plot(f,2*abs(Y(1:((2^nextpow2(L))/2))));
/b/iOn met un titre :[b][i]
title('Spectre');/b/i
et une légende à l'axe des abcisses [b][i]
xlabel('Fréquence (Hz)'); /b/i

*Pour enregister un son directement depuis Matlab
son=wavrecord(8*44100,44100,2,'double);
ici, on lance un enregistrement pendant 8 secondes échantillonné à 44.1kHz sur 2 voies (stereo) en precision double

*Pour exporter un son du format matrice vers le format wav:
wavwrite(son,44100,16,'nom_du_fichier.wav');