跳到主要内容

订阅与取消

对于仅自己发布,不跟其他人 连麦 的情况,并不需要执行订阅逻辑。

提示

连麦 是指在当前直播间内,主播邀请观众上麦,观众切换为主播后,主播们之间互相发布订阅的情况。

订阅资源

直播房间内有多名主播时,主播之间也需要订阅才能相互看见、听见。需调用 RCRTCEngine 中的 subscribe 来订阅主播资源。

方法

JavaScript
rtcEngine.subscribe(userId, type, tiny);

参数说明

参数类型必填说明
userIdString远端主播 ID
typeRCRTCMediaType资源类型
tinyBoolean是否订阅小流,默认 false

示例代码

JavaScript
// 订阅音视频资源
rtcEngine.subscribe(userId, RCRTCMediaType.AudioVideo);
console.log('订阅主播音视频资源');

// 订阅音频资源
rtcEngine.subscribe(userId, RCRTCMediaType.Audio);
console.log('订阅主播音频资源');

// 订阅视频小流
rtcEngine.subscribe(userId, RCRTCMediaType.Video, true);
console.log('订阅主播视频小流');

// 订阅视频大流
rtcEngine.subscribe(userId, RCRTCMediaType.Video, false);
console.log('订阅主播视频大流');

取消订阅

当需要取消订阅时,可调用 RCRTCEngine 中的 unsubscribe 来取消订阅主播资源。取消订阅接口通常跟订阅接口配对使用,但如果是用户想要退出房间,则不需要调用取消订阅方法,在调用退出房间接口时,SDK 内部会自动进行取消处理。

方法

JavaScript
rtcEngine.unsubscribe(userId, type);

参数说明

参数类型必填说明
userIdString远端主播 ID
typeRCRTCMediaType资源类型

示例代码

JavaScript
// 取消订阅音视频资源
rtcEngine.unsubscribe(userId, RCRTCMediaType.AudioVideo);
console.log('取消订阅主播音视频资源');

// 取消订阅音频资源
rtcEngine.unsubscribe(userId, RCRTCMediaType.Audio);
console.log('取消订阅主播音频资源');

// 取消订阅视频资源
rtcEngine.unsubscribe(userId, RCRTCMediaType.Video);
console.log('取消订阅主播视频资源');