我正在尝试将来自麦克风输入的声音实时转换为音符。 我正在使用我在AudioKit Microphone Analysis上找到的示例中的代码。这是工作。但是我有几个问题:
在下面添加了简单的代码。
//init
let mic = AKMicrophone()
tracker = AKFrequencyTracker(mic, hopSize: 64.0, peakCount: 1050.0)
silence = AKBooster(tracker, gain: 0)
//viewDidAppear()
AudioKit.output = silence
AudioKit.start()
我的应用只适用于人声(如卡拉OK),频率范围为65.4064 (C2) to 1046.5 (C6)
。我不确定hopSize
和peakCount
以及它们应该具有的适当值。然而,"麦克风分析"上面的示例使用KFrequencyTracker
init方法,minimumFrequency
和maximumFrequency
作为参数,这在lib的最后一个版本中是不存在的。
因此,我使用tracker.frequency
来确定我的应用中的注释。
问题是:
我的环境:
非常感谢提前。
答案 0 :(得分:1)
有关使用AudioKit的实时麦克风演唱检测应用程序的示例,请参阅本教程: https://audiokitpro.com/build-a-singing-tutor-app-with-audiokit/
swifting.io的优秀人员已经制作了一个完整的示例应用程序和教程博客文章,以演示如何建立一个唱歌导师。此代码类似于卡拉OK应用程序中可能使用的代码。祝你好运!