0
我不明白爲什麼音量定義的頻率不符合預期。定義頻率上的音量(C#)
我用幾個指定的頻率依次發送聲音給我的麥克風。然後我做我的麥克風緩衝區的FFT。在FFT退出時,我有一個複數的數組。要知道聲音所定義的頻率的音量,我看我的陣列,該陣列中元素的個數,我得到這樣:
MyFrequency = n*SamplingRate/SizeOfArray.
接下來,我得到的複數幅度
(sqrt(Re^2+Im^2)
如果我是對的,這顯示了這個頻率上的音量。但是這個數值會根據頻率而變化很大。如果我錯了,請向我解釋我需要怎麼做才能糾正我的錯誤。如果我是對的,請解釋一下爲什麼這個值變化如此之大。
不,我不使用窗口功能。例如,如果我使用漢寧窗,我不會提出這個問題嗎? – EXTRAM
是的 - 這就是整個觀點 - 在FFT之前需要一個窗口函數。 「漢寧」(馮漢)窗口應該沒問題。 –