viewing spectrum of an audio signal in matlab
151 views (last 30 days)
Show older comments
Hello all,
I have an audio signal (.wav) and would like to view its spectrum in matlab. Can anybody help me in this manner?
Thanks in advance.
0 Comments
Accepted Answer
Wayne King
on 15 Oct 2011
Read it in with wavread()
[signal,fs] = wavread('file.wav');
If signal is Nx2 (two columns), extract one of them
signal = signal(:,1);
If you have the Signal Processing Toolbox, enter
plot(psd(spectrum.periodogram,signal,'Fs',fs,'NFFT',length(signal)));
4 Comments
More Answers (1)
Ali Isik
on 15 Oct 2011
you should first read the audio signal using wavread() function. as a result of reading, the signal will be vectorized. after that, you should use fft() function to get the fourier transform of vectorized signal. at the end plot() the fourier transform of signal. sample code
[xn fs]=wavread('signal_name.wav');
nf=1024; %number of point in DTFT
Y = fft(xn,nf);
f = fs/2*linspace(0,1,nf/2+1);
plot(f,abs(Y(1:nf/2+1)));
See Also
Categories
Find more on Measurements and Spatial Audio in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!