Extract frequency samples from .wav file
Mostrar comentarios más antiguos
Hi,
I'd like to get a list of frequencies from a .wav file, but I don't have any idea how. I've tried to use the function wavread, from which I can get the amplitude values and plot them against the time, but what I want is to get and plot the discrete frequency values of the sound file (as I show in the image I've attached). The code I've used is the following one, and it would be perfect if I could do exactly the same operations but with the frequency values instead of the amplitude ones.
[wave,fs]=wavread('filename.wav');
t=0:1/fs:(length(wave)-1)/fs;
plot(t,wave);
Could anyone here give me a hand? Thanks in advance!
Respuestas (2)
Azzi Abdelmalek
el 21 de Jun. de 2015
stem(abs(fft(wave)))
1 comentario
FirstName LastName
el 23 de Jun. de 2015
Star Strider
el 21 de Jun. de 2015
0 votos
If you have the Signal Processing Toolbox, use the spectrogram function. That may provide what you want.
2 comentarios
FirstName LastName
el 24 de Jun. de 2015
Star Strider
el 24 de Jun. de 2015
My pleasure.
You can get data from spectrogram by asking it for outputs. All the data it calculates are available. See the documentation on Spectrogram and Instantaneous Frequency for details.
Categorías
Más información sobre Pulsed Waveforms en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!