iOS 5/6:首次使用CoreAudio后音量较低

Flo*_*ian 8 voip volume core-audio ios

我在一个VoIP应用程序上工作.AudioSession的模式设置为kAudioSessionMode_VoiceChat.

对于一个调用,我打开一个带有子类型kAudioUnitSubType_VoiceProcessingIO的CoreAudio AudioUnit.一切正常.第一次调用后,我使用AudioUnitUninitialize()关闭AudioUnit,然后停用音频会话.

然而,现在,似乎音频设备没有正确释放:铃声音量非常低,媒体播放器的音量低于平时.对于后续调用,我不能再激活kAudioUnitSubType_VoiceProcessingIO.它可以用kAudioUnitSubType_RemoteIO创建一个AudioUnit,但是调用的音量也非常低(接收器和扬声器).

这首先发生在iOS 5上.随着iOS 6上的iPhone 5,它甚至更糟(甚至更低的音量).

有没有人见过这个?我需要做的不仅仅是AudioUnitUninitialize()来释放语音处理单元吗?

Flo*_*ian 8

我找到了解决方案:我错误地用来AudioUnitUninitialize()释放用它检索的音频组件AudioComponentInstanceNew().正确的是使用AudioComponentInstanceDispose().