录音失败时播放声音



我有一个处理音频录制的第三方SDK。当录音开始时,它有一个回调。在回调中,我试图播放声音以指示用户设备正在收听(如Siri或任何其他语音识别倾向于做),但当我尝试时,我得到以下错误:

AURemoteIO::ChangeHardwareFormats: error -10875

我尝试使用AudioServicesPlaySystemSound以及AVAudioPlayer播放声音,结果相同。声音在其他时候播放得很好,根据错误,我的假设是在硬件级别上播放和录制之间存在不兼容。有人能澄清这个错误,或者给我一个提示,一个可能的解决方案?

在开始RemoteIO Audio Unit录制之前,确保音频会话被初始化并配置为Play_and_Record。

你不应该也不可能在RemoteIO录音回调中开始播放声音。只在回调中设置一个布尔标志来表示应该播放声音。从主UI运行循环中播放声音。

我的问题与外部SDK以及它们如何处理音频接口有关。当你要求SDK开始录制时,它们会覆盖所有内容,如果你收回控制权,你就会中断录制会话。所以在那个SDK的上下文中没有办法解决它除非他们修复了SDK

最新更新