使用5.X CallLib或CallKit进行音视频通话设置3A配置方式

音频配置参数生效前提:

  1. 需要 主叫端 在调用 RongCallClient.getInstance().startCall(…) 前设置

  2. 需要 被叫端 在调用 RongCallClient.getInstance().acceptCall(…); 前设置

设置音频配置参数代码示例:

RCRTCAudioStreamConfig.Builder audioStreamConfig = RCRTCAudioStreamConfig.Builder.create()
    .enableEchoFilter(true) // 代码示例以设置回声消除配置为例
    .setEchoCancel(AECMode.AEC_MODE2);

RongCallClient instance = RongCallClient.getInstance();
if (instance != null) { //RongCallClient类示例会在IM第一次登录成功后自动创建,如果没有登录IM成功 则有可能为空
    instance.setAudioConfig(audioStreamConfig);
}

RCRTCAudioStreamConfig.Builder 类相关方法说明可以参考API文档:

https://www.rongcloud.cn/docs/api/android/rtclib\_v5/cn/rongcloud/rtc/api/stream/RCRTCAudioStreamConfig.Builder.html

1. 开发者使用 CallKit 和 CallLib 模块时设置音频配置方式:

因为开发者使用到了 callkit 模块,在该模块中已经有相关配置的设置方法:在 callkit/src/main/java/io/rong/callkit/BaseCallActivity.java 类的 audioVideoConfig() 方法中添加如下设置即可;因为 CallKit 中通话页面继承了 BaseCallActivity 类,该方法会在 startCall 和 acceptCall 之前调用将配置设置给SDK。

2. 开发者仅使用 CallLib 模块 时设置音频配置方式:

因为开发者没有使用 callkit 模块,所以需要在 主叫端 调用 RongCallClient.getInstance().startCall(…) 和 被叫端 调用RongCallClient.getInstance().acceptCall(…) 前添加上面代码示例的配置。