我正在将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过滤器的功能吗?还是我对过滤器没有正确的认识?
还有另一种方法来过滤频率范围吗?
| 归档时间: |
|
| 查看次数: |
429 次 |
| 最近记录: |