iPhone麦克风高通滤波器

时间:2010-01-21 17:40:48

标签: iphone audio filter microphone avaudiorecorder

在我的应用程序中,我使用AVAudioRecorder来检测来自麦克风的输入。但是,我需要创建一个高通滤波器,这样我才能注册更高音调的声音。我看过FFT,但我无法弄清楚如何实现它。所以,现在我正在寻找一种带有高通滤波器的FFT。

任何帮助将不胜感激!谢谢!

2 个答案:

答案 0 :(得分:5)

请查看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

答案 1 :(得分:2)

在这种情况下,使用FFT将是一个大锤解决方案。一个简单的FIR或IIR滤波器就足够了,但你需要首先确定滤波器的设计参数,即截止频率(-3 dB点),通带纹波,阻带增益,以及你是否关心阶段响应与否。