setAnsMode method
@valid since 3.52
@detail api
@author liuchuang
@brief 支持根据业务场景,设置通话中的音频降噪模式。
@param ansMode 降噪模式。具体参见 AnsMode{@link #AnsMode}。
@return
- 0: 调用成功。
- < 0 : 调用失败。查看 ReturnStatus{@link #ReturnStatus} 获得更多错误说明
@note
- 该接口进房前后均可调用,可重复调用,仅最后一次调用生效。
- 降噪算法包含传统降噪和 AI 降噪。传统降噪主要是抑制平稳噪声,比如空调声、风扇声等。而 AI 降噪主要是抑制非平稳噪声,比如键盘敲击声、桌椅碰撞声等。
- 只有以下 ChannelProfile{@link #ChannelProfile} 场景时,调用本接口可以开启 AI 降噪。其余场景的 AI 降噪不会生效。
- 游戏语音模式: CHANNEL_PROFILE_GAME(2)
- 高音质游戏模式: CHANNEL_PROFILE_GAME_HD(8)
- 云游戏模式: CHANNEL_PROFILE_CLOUD_GAME(3)
- 1 vs 1 音视频通话: CHANNEL_PROFILE_CHAT(5)
- 多端同步播放音视频: CHANNEL_PROFILE_LW_TOGETHER(7)
- 云端会议中的个人设备: CHANNEL_PROFIEL_MEETING
- 课堂互动模式: CHANNEL_PROFILE_MEETING_ROOM(17)
- 云端会议中的会议室终端: CHANNEL_PROFILE_CLASSROOM(18)
Implementation
Future<int?> setAnsMode(AnsMode ansMode) async {
$a() => ($instance as $p_a.RTCEngine)
.setAnsMode(t_AnsMode.code_to_android(ansMode));
$i() => ($instance as $p_i.ByteRTCEngine)
.setAnsMode(t_AnsMode.code_to_ios(ansMode));
if (Platform.isAndroid) {
return $a();
} else if (Platform.isIOS) {
return $i();
} else {
throw UnsupportedError(
'Not Support Platform ${Platform.operatingSystem}');
}
}