AudioKit-如何在麦克风上使用频率滤波器?

5 audio ios swift audiokit

我正在将AudioKit库与Swift一起用于开发一个简单的iOS应用程序,该应用程序应该能够监听该范围的频率3.000Hz - maybe 6000Hz

因此,我只想跟踪该范围内的麦克风输入频率,并实现此目的,因此我尝试在输入麦克风上应用滤波效果,以避免拾取几种有害噪声的频率。

var mic: AKMicrophone
var silence: AKBooster
var filter: AKHighPassFilter
var tracker: AKFrequencyTracker

public init() {
   mic = AKMicrophone()
   filter = AKHighPassFilter(mic)
   filter.cutoffFrequency = 3000 // just get frequencyies above 3000Hz (highpass)
   filter.resonance = 0
   tracker = AKFrequencyTracker(filter)
   silence = AKBooster(tracker, gain: 0)
}

func start() {
    AKSettings.audioInputEnabled = true
    AudioKit.output = silence
    AudioKit.start()
}

func print() {
    print(tracker.frequency)
}
Run Code Online (Sandbox Code Playgroud)

总结一下:我知道滤波器正在改变某些东西-但是我不能真正为该范围应用频率滤波器, 3.000Hz +因为我还获得了低于3.000Hz (例如2.0000 / 500 /等)的值作为滤波频率。

AudiKit网站提供了一些使用滤波器的示例-但是我找不到如何在输入麦克风上应用滤波器以获得滤波频率的 示例http://audiokit.io/playgrounds/Filters/


我做错事了吗?
这真的是AudioKit过滤器的功能吗?还是我对过滤器没有正确的认识?
还有另一种方法来过滤频率范围吗?