用于播放和录制的音频单元,无需过滤器

Audio Unit for play and record without filters

我正在开发一个应用程序,它设置一个音频单元来录制和播放,使用回调进行音频处理。我使用回调是因为我必须在 c 中实现我自己的过滤器。我正在使用 kAudioUnitType_Output 和 kAudioUnitSubType_RemoteIO 的音频单元。此音频单元默认使用高通滤波器。我只想应用我自己的过滤器,所以我想知道是否有一种方法可以在不将音频会话模式设置为 AVAudioSessionModeMeasurement 的情况下禁用此过滤器,因为我使用它会失去增益。 我找不到禁用此过滤器或可用于此目标的音频单元的方法。

我认为不使用测量模式就没有办法做到这一点。我通过在渲染回调中手动提高增益 (4x) 来补偿增益损失。