我在一个 VoIP 应用程序上工作。AudioSession 的模式设置为 kAudioSessionMode_VoiceChat。
对于通话,我打开一个子类型为 kAudioUnitSubType_VoiceProcessingIO 的 CoreAudio AudioUnit。一切正常。第一次通话后,我使用 AudioUnitUninitialize() 关闭 AudioUnit 并停用音频会话。
然而,现在似乎音频设备没有正确释放:铃声音量非常低,媒体播放器的音量比平时低。对于后续呼叫,我无法再激活 kAudioUnitSubType_VoiceProcessingIO。它可以使用 kAudioUnitSubType_RemoteIO 创建一个 AudioUnit,但通话的音量非常低(接收器和扬声器)。
这首先发生在 iOS 5 上。对于 iOS 6 上的 iPhone 5,情况更糟(甚至更低的音量)。
有人见过这个吗?我需要做的不仅仅是 AudioUnitUninitialize() 来释放语音处理单元吗?