AVAudioEngine 的最大麦克风点击速度是多少?

问题描述 投票:0回答:1

在 iOS 应用程序中,使用 swift,我这样做是为了从麦克风获取波形数据:

let BUFSZ = 2400
AVAudioEngine.inputNode.installTap(onBus: 0, bufferSize: BUFSZ, format: AVAudioEngine.inputNode.outputFormat(forBus: 0)) { (buffer: AVAudioPCMBuffer, when: AVAudioTime) in
   my callback
}

我发现我能得到的最快

my callback
大约是10hz,并且tap回调中缓冲区的最小结果帧大小是4800,无论我使BUFSZ有多小。

这是预期的吗?它看起来很慢,特别是如果我想制作实时应用程序。 iOS的苹果生态系统中有没有一种方法可以更快地从麦克风获取数据?

ios swift audio avaudioengine
1个回答
0
投票

点击并不意味着实时访问音频数据。它们位于“侧面”,而不是管道的一部分。当您“很快”需要数据而不是实时应用程序所需的数据时,它们很方便。

如果您想直接集成到管道中,请使用AVAudioSinkNode来消费数据。

© www.soinside.com 2019 - 2024. All rights reserved.