在我将 AudioSession 的类别从 更改kAudioSessionCategory_MediaPlayback
为 后kAudioSessionCategory_PlayAndRecord
,该AudioQueueStart
方法挂起大约 3 ~ 5 秒以开始录制。
该问题仅发生在运行 iOS 5 的 iOS 设备上,而不是在模拟器中或仍在运行 iOS 4 或 iOS 3 的设备上。
这是我尝试过的:
如果我不更改类别但始终使用kAudioSessionCategory_PlayAndRecord
,则一切正常。AudioQueueStart
约 0.01 秒后开始录制。但是因为我希望我的声音来自设备的扬声器,所以我不能kAudioSessionCategory_PlayAndRecord
一直使用。
同时使用kAudioSessionOverrideAudioRoute_Speaker
andkAudioSessionCategory_PlayAndRecord
是个好主意,但如果我这样做的话,我也应该处理很多kAudioSessionProperty_AudioRouteChange
情况,比如用户插入或移除耳机,连接蓝牙耳机等,太复杂了。
任何建议或解决方案将不胜感激。