2010-04-10 161 views
2

我該如何獲得(是否有可能?)所有音頻頻率現在都在系統中播放,用於編寫一些聲音可視化工具?有沒有庫C++或c#? 預先感謝所有音頻頻率

回答

4

基本步驟是:

  • 應用窗函數以阻止樣品的(例如1024個樣本,漢寧窗)
  • 上加窗採樣執行實數到複數FFT
  • 取每個FFT輸出倉的幅度(sqrt(re * re + im * im)
  • 在結果功率譜估計中識別峯值
  • 每個峯值的bin索引對應於f該部件的頻率
+0

這些是什麼操作的基本步驟? – tga 2010-04-10 10:33:06

+1

@Tgadfly:這些是確定音頻流中存在的頻率分量的基本步驟。您可以使用FFTW或者KissFFT等FFT庫來完成繁重的工作 - 其餘部分非常簡單。 – 2010-04-10 14:19:46

1

我不確定,但我認爲你可以使用FMOD庫來做到這一點。具體而言,Get spectrum函數。