AudioKit:如何点击相同的输入进行多次使用(AudioKitUI + 语音识别)

AudioKit: How to tap the same input for multiple uses (AudioKitUI + Speech Recognition)

我希望能够将 AudioKitUI 的组件之一 FFTView 与输入节点结合使用,以直观地显示节点输入并执行语音识别。

根据 BaseTap.swift 关于水龙头的注释(第 65 行):

// a node can only have one tap at a time installed on it
// make sure any previous tap is removed.
// We're making the assumption that the previous tap (if any)
// was installed on the same bus as our bus var.

如果一个节点只能有一个 tap,我们如何将 AudioKitUI 组件与这些 tap 的实际数据结合使用?

我正在(成功地)点击输入来进行语音识别:

audioManager.mic.avAudioNode.installTap(onBus: 0, bufferSize: 1024, format: inputFormat) { (buffer: AVAudioPCMBuffer, when: AVAudioTime) in self.recognitionRequest?.append(buffer)

然而,当我尝试安装水龙头进行修复然后使用 FFTView 时,应用程序崩溃并显示 error -10868。考虑到我只能安装一个水龙头,这是有道理的,但从概念上讲,我不明白如何绕过这个限制。我知道并见过可以点击音频输入、显示数据并同时处理数据的应用程序。任何指导将不胜感激。

只需将一系列混音器串联起来,然后对每个混音器执行您需要的操作即可。每个最多点击一次。