繁体   English   中英

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

[英]iOS 5/6: low volume after first usage of CoreAudio

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

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

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

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

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

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

是的,在使用voiceProcessingIO时需要处理audioUnit。 出于某种原因,使用RemoteIO子类型时没有问题。 因此,每当您获得OSStatus -66635(kAudioQueueErr_MultipleVoiceProcessors)时,请检查是否缺少AudioComponentInstanceDispose()调用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM