通过设备管理API开发者可实现以下功能:
设备 | 功能 | 相关API |
麦克风 | 检测麦克风状态 | |
摄像头 | 检测摄像头状态 | |
扬声器 | 检测扬声器状态 |
对于PC端,开发者可通过API实现设备列表的检测,并可对会议中使用的设备进行选择。设备状态变更引起的参会者音视频状态的变更将通过事件回调进行通知。
当会议链接成功时,系统会自动申请相机、麦克风、扬声器资源,因此我们一般操作媒体设备都会在收到会议链接成功回调之后进行。
/**
* 开启音频设备
* @param micMute 是否静音麦克风
* @param speakerMute 是否静音扬声器
*/
startAudio(micMute: boolean = true, speakerMute: boolean = false) {
XYRTCEngine.getInstance().startAudio(micMute, speakerMute);
}
/**
* 操作麦克风静音
* @param isAudioMute 是否静音
* @param reason 静音原因
*/
operateAudioMute(isAudioMute: boolean, reason: XYSDKAudioMuteReason = XYSDKAudioMuteReason.User): void {
XYRTCEngine.getInstance().micMute(isAudioMute, reason);
}
/**
* 操作视频静音
* @param isVideoMute 是否静音
* @param notifyRemote 是否通知远端
*/
operateVideoMute(isVideoMute: boolean, notifyRemote: boolean = true): void {
if (notifyRemote) {
XYRTCEngine.getInstance().videoMute(isVideoMute);
}
this.setLocalVideoEnabled(!isVideoMute);
}