我写了一个听起来比AvAudioUnitTimePitch.
好得多的时间扩展算法--我在它周围制作了一个iOS应用程序,它使用AVAudioEngine,
,认为我可以将算法插入到AUv3扩展中,然后简单地替换AvAudioUnitTimePitch.
但是,阅读文档时,这种方法似乎是不可能的,因为时间扩展不是实时效果,因此AVAudioUnitTimePitch
是'aufc‘(kAudioUnitType_FormatConverter).
类型--用于创建自定义音频扩展的文档只提到四种类型,而'aufc’不是其中之一,Xcode中的模板只支持这四种类型。
一线希望是,在尝试实例化空白扩展时,我可以设置componentDescription.componentType = kAudioUnitType_FormatConverter
,实例化显然是成功的,尽管这可能是一个死胡同。
是否有人成功地做了'aufc‘的v3扩展?考虑到我已经围绕AVAudioEngine,
编写了大量代码,如果AUv3扩展不是可行的,那么还有其他推荐的方法来完成我想做的事情吗?
发布于 2021-06-23 14:11:26
经过几天的实验,我发现完全有可能让你自己的时间拉伸AUv3音频单元。AU负责从上游源提取帧,指定要拉出的帧数并提供时间戳。
最难理解的事情是在调用AudioTimeStamp
从上游提取帧时为mSampleTime
设置正确的AUInternalRenderBlock
值。由于文档状态,您从下游收到的时间戳示例时间在时间扩展时将毫无意义。
我不认为使用的扩展类型- 'aufc‘vs 'aufx’会有任何影响。
https://stackoverflow.com/questions/68069100
复制相似问题