Closed. This question needs to be more focused。它当前不接受答案。












想改善这个问题吗?更新问题,使其仅关注editing this post一个问题。

2年前关闭。



Improve this question




我正在尝试将麦克风输入中的声音实时转换为音符。
我正在使用在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)。我不确定hopSizepeakCount及其应具有的适当值。但是,上面的“麦克风分析”示例使用KFrequencyTracker初始化方法,并将minimumFrequencymaximumFrequency作为参数,但该库的最新版本中不存在该参数。

因此,我使用tracker.frequency来确定应用程序中的注释。

问题是:
  • 使用AudioKit完成任务最合适的方法是什么?我上面的代码正确吗?

  • 我的环境:
  • IOS应用程序(iPhone,iPad)
  • IOS 11.2
  • 迅捷4
  • AudioKit〜> 4.0

  • 提前谢谢了。

    最佳答案

    有关使用AudioKit进行实时麦克风唱歌检测的示例,请参阅本教程:
    https://audiokitpro.com/build-a-singing-tutor-app-with-audiokit/

    ios - 使用AudioKit将声音从麦克风输入实时转换为音符-LMLPHP

    swifting.io的优秀人才提供了完整的示例应用程序和教程博客文章,以演示如何构建歌唱家教。此代码类似于卡拉OK应用程序中可能使用的代码。祝你好运!

    08-05 23:24
    查看更多