如何创建实现多个音频单元的AUAudioUnit?

时间:2017-10-16 00:39:17

标签: ios macos audio core-audio avaudioengine

Apple的创建AUAudio单元的文档(此处:https://developer.apple.com/documentation/audiotoolbox/auaudiounit/1387570-initwithcomponentdescription) 他们声称

  

单个音频单元子类可以实现多个音频单元 - 例如,也可以用作生成器的效果,或相关效果的集群。

我找不到这个在线的例子。理想情况下,如果您的答案/解决方案涉及使用Swift和AVAudioEngine会很好,但我很乐意接受任何让我朝着正确的方向前进的答案。

提前致谢。

1 个答案:

答案 0 :(得分:3)

我在我的测试应用程序中发布了一些源代码,它在GitHub上使用AVAudioEngine,Swift和C实例化AVAudioUnit生成器子类对象:

https://github.com/hotpaw2/auv3test5

请注意实时音频上下文中的Apple recommends NOT using Swift,以便我的源代码部分用C语言编写,在Objective C包装类中。

如果使用initWithComponentDescription:options:error:,则可以传递一个选项来配置新的音频单元子类对象以执行任何操作(使用类似于选项上的switch语句)。