我一直在研究iOS的音频单元托管指南,然后尝试使用提供的示例项目。但是,所有这些项目都使用了已弃用的AudioUnitSampleType(它似乎是一个简单的typedef)。这可能是一个新手问题,但我该如何改变呢? 根据我的理解,我应该用不同类型(SInt16或Float)替换它,具体取决于目标iOS版本(当然,我希望尽可能多地定位)。那么我应该写一堆#ifndef's还是我错过了什么?
答案 0 :(得分:1)
您应该获取每个音频单元的kAudioUnitProperty_StreamFormat属性,并在该iOS版本下使用该音频单元的原生格式,而不是猜测/ ifdef'对于最近的iOS设备上的任何最新iOS版本,最有可能是4字节浮点数,就像所有最近的Apple A?处理器可以使用浮点数比使用SInt16或SInt32数据更快或更快地进行算术运算。