[英]IOS CallKit Audio issue
我使用pjsip Lib开发了ios voip应用程序。 在这个应用程序包含视图我使用callkit与pushkit这里音频和麦克风不工作在ios 10.2版本
无法从您的描述中说出原因。 但我曾经遇到过处理CallKit的音频问题。 有一点需要注意的是,您应该只管理音频会话设置
- (void)provider:(CXProvider *)provider didActivateAudioSession:(AVAudioSession *)audioSession
和
- (void)provider:(CXProvider *)provider didDeactivateAudioSession:(AVAudioSession *)audioSession
如果您碰巧管理音频会话设置或音频单元其他地方,可能会导致很多不同的音频问题。
对于传入SIP呼叫,请确保在用户应答呼叫之前,呼叫音频I / O 未运行 。 这是至关重要的事情。
当CXProvider
响应时
func provider(_ provider: CXProvider, perform action: CXAnswerCallAction)
AVAudioSession
那里配置AVAudioSession
(将采样率设置为44100,将缓冲区设置为0.0005,使用VoiceChat模式设置类别PlayAndRecord)
完成动作,这将提升AVAudioSession
优先级, CXProvider
将响应
func provider(_ provider: CXProvider, didActivate audioSession: AVAudioSession)
在那里你开始调用音频处理器(对于pjsip,它有点像pjsua_set_snd_dev(-1, -2)
)
确保在CXProvider响应时停止声音设备
func provider(_ provider: CXProvider, didDeactivate audioSession: AVAudioSession)
并且建议在使用CallKit时在sip_init()
停止声音设备,如pjsua_set_no_snd_dev()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.