我有第三方SDK处理录音。录制开始时有回调。在回调中,我试图播放声音向用户表明设备正在收听(如Siri,或任何其他语音识别倾向于这样做),但当我尝试时,我收到以下错误:
AURemoteIO :: ChangeHardwareFormats:错误-10875
我尝试使用AudioServicesPlaySystemSound和AVAudioPlayer播放声音,但结果相同。声音在其他时间播放正常,根据错误,我的假设是在硬件级别上播放和录制之间存在不兼容性。任何人都可以澄清这个错误,或者给我一个可能的解决方法的提示吗?
答案 0 :(得分:1)
在启动RemoteIO Audio Unit录制之前,请确保已为Play_and_Record初始化和配置音频会话。
答案 1 :(得分:0)
您不应该并且可能无法在RemoteIO录制回调中开始播放声音。仅在回调中设置布尔标志以指示应播放声音。从主UI运行循环播放您的声音。
答案 2 :(得分:0)
我的问题与外部SDK以及它们如何处理音频接口有关。当您要求SDK开始录制时,它们会覆盖所有内容,如果您取消控制权,则会中断录制会话。因此,在该SDK的上下文中,除非他们修复SDK,否则无法解决它。