2010-06-03 123 views
1

在我的應用程序中,我想要在錄製音頻時動態地查找/計算音頻,而不需要保存,播放和全部。現在我正試圖在aurioToch示例代碼的幫助下做到這一點。在那個示例中,在FFTBufferManager類的方法(如GrabAudioData和ComputeFFT)中,在這裏我無法找到他們計算頻率值的位置,因爲它動態地取決於音頻聲音,我花了超過5天時間。請幫助我。動態計算頻率值?

+0

夥計,不只有一個頻率值。快速傅里葉變換爲每個頻率(範圍)提供一個值,如同該圖像一樣。 http://www.owlnet.rice.edu/~elec301/Projects02/adaptiveFilters/images/fft-partial.png如果你真的想要,你可以選擇一個主導頻率,但可能沒有。 – 2010-06-03 14:23:18

+0

「」「在這裏,我無法找到他們計算頻率值的位置,因爲它動態地取決於音頻聲音,我花了超過5天時間。請幫助我。」「」 - 我不明白。要計算頻率的權重,您需要一些長度的樣本。如果你正在談論「滾動」計算,嘗試採取最後30秒左右的窗口...... – 2010-06-03 14:25:09

+0

@Hamish Grubijan,感謝您的回覆,我想計算在錄製音頻時連續顯示頻率。 – Sivanathan 2010-06-03 15:31:22

回答

1

如果音頻信號清晰純淨,則不需要使用FFT。只要計算高峯和低谷。或者只是高峯。取出該數字併除以緩衝區中的樣本數量,然後乘以採樣速率。這是你的頻率值。