在我的應用程序中,我使用AVAudioRecorder來檢測來自麥克風的輸入。但是,我需要創建一個高通濾波器,以便只錄制更高音的聲音。我研究過FFT,但我無法弄清楚如何實現它。所以,現在我正在尋找一種具有高通濾波器的FFT。iPhone麥克風高通濾波器
任何幫助將不勝感激!謝謝!
在我的應用程序中,我使用AVAudioRecorder來檢測來自麥克風的輸入。但是,我需要創建一個高通濾波器,以便只錄制更高音的聲音。我研究過FFT,但我無法弄清楚如何實現它。所以,現在我正在尋找一種具有高通濾波器的FFT。iPhone麥克風高通濾波器
任何幫助將不勝感激!謝謝!
看一看Wikipedia's article on High-pass filters,特別是section on algorithmic implementation of one。
對於懶,這裏的僞代碼實現:
// Return RC high-pass filter output samples, given input samples,
// time interval dt, and time constant RC
function highpass(real[0..n] x, real dt, real RC)
var real[0..n] y
var real α := RC/(RC + dt)
y[0] := x[0]
for i from 1 to n
y[i] := α * y[i-1] + α * (x[i] - x[i-1])
return y
使用FFT會在這種情況下大錘的解決方案。一個簡單的FIR或IIR濾波器應該足夠了,但是您需要首先確定濾波器的設計參數,即截止頻率(-3 dB點),通帶紋波,阻帶增益以及您是否關心階段響應與否。