Frequency domain analysis of a Audio signal
18 ビュー (過去 30 日間)
古いコメントを表示
hi Matlab experts,
I am relatively new to Matlab.
I have an Audio sample of an electric motor running noise. The Audio file is 25 Sec long, it has got 551251 samples. I did following FFT analysis on the signal.
if true
% code start
y = wavread('audio_signal');
N = lendth (y);
Fs = N / 25;
f = (Fs/N).*(0:N-1);
Y = fft(y,N);
Y = abs (Y(1:N)./(N/2));
Y(Y==0) = eps;
Y = 20log10(Y);
plot (f,Y);
grid on
% code end
on running this code it has created attached figure.
Now I don't understand what kind of information can I extract from this figure. I basically want peak frequency components, various noise information and power information.
Please help me to understand this figure.
thanks in Advance,
Harry
0 件のコメント
回答 (1 件)
Veera Kanmani
2018 年 2 月 28 日
[audio_in,audio_freq_sampl]=audioread('audio_signal');
Length_audio=length(audio_in);
df=audio_freq_sampl/Length_audio;
frequency_audio=-audio_freq_sampl/2:df:audio_freq_sampl/2-df;
figure
FFT_audio_in=fftshift(fft(audio_in))/length(fft(audio_in));
plot(frequency_audio,abs(FFT_audio_in));
title('FFT of Input Audio');
xlabel('Frequency(Hz)');
ylabel('Amplitude');
7 件のコメント
Paryul Jain
2019 年 2 月 20 日
How to get the dominant frequencies , so that they can be further used in the code?
参考
カテゴリ
Help Center および File Exchange で Fourier Analysis and Filtering についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!