viewing spectrum of an audio signal in matlab
151 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Wayne King
2011-10-15
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 个评论
更多回答(1 个)
Ali Isik
2011-10-15
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)));
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Measurements and Spatial Audio 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!