gpt4 book ai didi

iphone - 在iOS 5中,更改类别后,“AudioQueueStart”用了3到5秒钟开始录制

转载 作者:行者123 更新时间:2023-12-01 19:25:54 35 4
gpt4 key购买 nike

在将AudioSession的类别从kAudioSessionCategory_MediaPlayback更改为kAudioSessionCategory_PlayAndRecord之后,AudioQueueStart方法挂起约3到5秒以开始录制。

该问题仅发生在运行iOS 5的iOS设备上,而不是在Simulator中或仍在运行iOS 4或iOS 3的设备上。

这是我尝试过的:

如果我不更改类别,但始终使用kAudioSessionCategory_PlayAndRecord,则一切正常。 AudioQueueStart在约0.01秒内开始记录。
但是因为我希望声音来自设备的扬声器,所以我不能一直使用kAudioSessionCategory_PlayAndRecord

同时使用kAudioSessionOverrideAudioRoute_SpeakerkAudioSessionCategory_PlayAndRecord是一个好主意,但如果这样做,我也应该处理很多kAudioSessionProperty_AudioRouteChange的情况,例如用户插入或卸下耳机,连接蓝牙耳机等。这太复杂了。

任何建议或解决方案将不胜感激。

最佳答案

最终,我找到了解决此问题的方法,我认为这是iOS 5的错误。

我将类别设置为kAudioSessionCategory_PlayAndRecord并使用以下代码:

UInt32 defaultToSpeaker = TRUE;
AudioSessionSetProperty(kAudioSessionProperty_OverrideCategoryDefaultToSpeaker, sizeof(defaultToSpeaker), &defaultToSpeaker);

请注意, kAudioSessionProperty_OverrideCategoryDefaultToSpeaker ID仅在iOS 3.1或更高版本中可用。

关于iphone - 在iOS 5中,更改类别后,“AudioQueueStart”用了3到5秒钟开始录制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7757739/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com