场景描述(步骤):
1、初始化RtcEngine,设置场景为Constants.CHANNEL_PROFILE_COMMUNICATION,设置分辨率、fps,开启视频模块,RtcEngine.startPreview();
2、muteLocalAudioStream(true)不发送本地音频;
3、用户加入频道,muteLocalVideoStream(false)发送视频数据;
4、渲染本地视频;
操作:加入频道后,远程用户调用muteLocalAudioStream(boolean)开关音频,本地用户拿对应的onRemoteAudioStateChanged回调方法的值;
现象:
1、远程用户发送音频时(执行muteLocalAudioStream(false)),本地用户收到回调方法打印值如下日志中前两行,必现,每次都这样,包括ios也是;
2、接下来远程用户在调该方法开关音频时,回调如下日志中的后面几行,reason都是5或6,表示mute开关;
为何第一次会出现reason为0,state为1和2的情况?这样本地用户如何判断远程用户的音频状态??
日志:
onRemoteAudioStateChanged_uid: 231, state: 1, reason: 0, elapsed: 9031
onRemoteAudioStateChanged_uid: 231, state: 2, reason: 0, elapsed: 9082
onRemoteAudioStateChanged_uid: 231, state: 0, reason: 5, elapsed: 44018
onRemoteAudioStateChanged_uid: 231, state: 2, reason: 6, elapsed: 172079
onRemoteAudioStateChanged_uid: 231, state: 0, reason: 5, elapsed: 173062
onRemoteAudioStateChanged_uid: 231, state: 2, reason: 6, elapsed: 174700