周波数特性を知りたい
이전 댓글 표시
clear;
[p1,fs]=audioread('40kph_RN.wav');
[p2,fs]=audioread('2000rpm_Knock.wav');
fs=44100;
p2(448512,[1 2]) = [0,0];
smix=p1+p2;
soundsc(smix,fs)
このような音を二つ重ねた時の周波数特性を表示する方法を教えていただきたいです.基本的なことなのですが,久しぶりにMATLABを触ったため忘れてしまいました.
답변 (1개)
Kaede
2020년 8월 6일
댓글 수: 4
takemoto
2020년 8월 7일
合成した後の音の周波数特性を求めるのであれば、"smix"に対してfft演算を行うべきではないでしょうか?
例えば、以下でどうでしょう。
Y = fft(smix,N);
P = abs(Y/N);
frequency = 0 : fs/N : fs - fs/N;
plot(frequency,10*log10(P)), xlim([0,fs/2]), grid
Kaede
2020년 8월 8일
takemoto
2020년 8월 17일
別のスレッドで既に解決されている様ですが、fft関数の第二引数を省略することで、入力の全データに対して変換処理を行いますので、この例ですと、
p1_fft=fft(p1,N); ==> p1_fft=fft(p1);
p2_fft=fft(p2,N); ==> p2_fft=fft(p2);
とすればよさそうです。
Kaede
2020년 8월 17일
카테고리
도움말 센터 및 File Exchange에서 スペクトル測定에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!