AUAudioUnit 和 AVAudioUnit API 看起来非常相似,

有什么不同?什么时候用哪一种?

最佳答案

AVAudioUnit 作为 AVAudioEngine 中的节点连接。 AUAudioUnit 通常连接在 AUGraph 中。功能应该相似,因为两者都是音频单元,但使用 AVAudioEngine 是 iOS 中音频控制的现代方式,因此 AVAudioUnits 背后有更现代化的 API。

我确信在某些用例中,一个比另一个更受欢迎,但我会说使用 AVAudioUnits,除非您需要它们不提供的特定内容。 AUAudioUnits 的可定制性及其处理图很棒,但根据我的经验,它伴随着陡峭的学习曲线和更多的代码。我花了很多个不眠之夜检查我的 AUGraphs,但 AVAudioEngine 对我非常友好。

此外,AVAudioNodes,因此 AVAudioUnits,在附加到 AVAudioEngine 之前不起作用,但是您可以使用渲染回调设置没有 AUGraph 的 AUAudioUnits。

10-08 12:28