2017-10-16 103 views
4

在苹果的文档用于创建AUAudio单元(这里:https://developer.apple.com/documentation/audiotoolbox/auaudiounit/1387570-initwithcomponentdescription) 他们声称如何创建一个实现多个音频单元的AUAudioUnit?

单个音频单元的子类可以实现多个音频单元,例如,一个也可以作为一个发电机作用,或一组相关的效果。

有没有这个在线的例子,我可以找到。理想情况下,如果您的答案/解决方案涉及使用Swift和AVAudioEngine,但我会高兴地接受任何让我朝着正确方向移动的答案,那将会很好。

在此先感谢。

+0

在Core Audio的2017年WWDC会议中,Apple表示不要在实时音频上下文(AUAudioUnit子类的工作内容)中使用Swift。 – hotpaw2

回答

2

我贴一些源代码,我测试的应用程序,它在这里实例使用AVAudioEngine,斯威夫特和C,在GitHub上的AVAudioUnit生成子类对象:

https://github.com/hotpaw2/auv3test5

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

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

+1

让我看看你的代码,看看它是否是我需要的。感谢您的回应! –

+1

所以是的,这是有帮助的,但它不会在一个实现多个音频单元,除非我失去了一些东西? –

+0

查看关于添加选项的最后一段。 – hotpaw2

相关问题