小鱼SDK提供显示当前发言者的接口,同一时间最多显示3路声音能量最高的发言者。(开始支持版本:v2.29.7)
初始化时通过Settings.setUiNeedSpeakers设置是否需要上报会中发言者信息。 会议中注册setNemoSDKListener回调,当会议中发言者音频能量发生变化时onSpeakerChanged接口会被回调,如果同时发言的包括多人会优先上报能量值最高的三位发言者。 发言者Speaker中各个字段代表: 1. callUri:参会者callUri,由参会者用户id和参会设备类型构成 2. energyAverage:音频能量值 3. participantId:参会者会中唯一id 从上述信息可以看出,上报的Speaker信息中并不包含发言者的displayName,那如果要显示参会者名称 就需要和onRosterChange接口上报的参会者信息进行交叉对比,得到参会者的昵称。
XyCallPresenter.java
NemoSDK.getInstance().setNemoSDKListener(new SimpleNemoSDkListener(){
@Override
public void onSpeakerChanged(List<Speaker> speakers) {
super.onSpeakerChanged(speakers);
//发言者列表
}
});