joinChannel 后,AVPlayer 播放声音变小。
情形1:
joinChannel 后,AVPlayer 播放声音变小
原因:
AVPlayer 默认使用的 audio session 是 AVAudioSessionCategoryPlayback ,加入频道,AE 引擎重启,并把 Category 设置为 AVAudioSessionCategoryPlayAndRecord(自带回声消除等信号处理的模式),这样就会导致 AVPlayer 的声音变小。
解法:
自 v2.2 及之后版本,在调用 joinChannel API 前,调用以下接口(每次调用 joinChannel 前,都需要设置一下这个参数),确保离开频道时不会把 AVPlayer 给停掉:
[self.agoraKit setParameters: @ "{\"che.audio.keep.audiosession\": true}" ];
如果设置之后,还是觉得声音太小,可以在 AVPlayer 出声音后 ,立即调用以下两个接口:
agoraKit.setEnableSpeakerphone(false)
agoraKit.setEnableSpeakerphone(true)
情形2:
joinChannel 后,用 webview 加载 http://music.baidu.com 4",然后发现音乐声很小。
解决方案是im消息做缓存,定时器1s刷新ui