开启和关闭视频
更新时间: 2022/10/31 07:44:07
本文介绍如何通过 NERoom SDK 开启或关闭本地视频的发送。
功能介绍
NERoom SDK 支持通过 unmuteMyVideo 和 muteMyVideo 开启或关闭本地视频流的采集与上行。
注意事项
您需要先调用 setupLocalVideoCanvas
方法开启本地视图后才能发布视频流。
开启本地视频
配置步骤
- 调用
getRoomContext
方法获取房间上下文。调用此方法时,您需要将roomUuid
参数设置为您所加入房间的 ID。 - 调用
setupLocalVideoCanvas
方法设置本地画布。调用此方法时,您需要将bSetUp
参数设置为 true。 - 调用
unmuteMyVideo
方法开启本地视频采集并发布视频流。
示例代码
auto context = m_pRoomKit->getRoomService()->getRoomContext(roomUuid);
if(context){
context->getRtcController()->setupLocalVideoCanvas(true);
context->getRtcController()->unmuteMyVideo([this](int code, const std::string& msg){
});
}
关闭本地视频
配置步骤
- 调用
getRoomContext
方法获取房间上下文。调用此方法时,您需要将roomUuid
参数设置为您所加入房间的 ID。 - 调用
setupLocalVideoCanvas
方法取消设置本地画布。调用此方法时,您需要将bSetUp
参数设置为 false。 - 调用
muteMyVideo
方法关闭本地视频采集。
示例代码
auto context = m_pRoomKit->getRoomService()->getRoomContext(roomUuid);
if(context){
context->getRtcController()->setupLocalVideoCanvas(false);
context->getRtcController()->muteMyVideo([this](int code, const std::string& msg){
});
}
关闭房间内其他成员的视频
注意事项
您可以在云信控制台上配置某角色是否具备关闭房间内其他成员的视频的权限,只有具备该权限的角色才可以执行此操作。
配置步骤
-
加入房间后,调用
getRoomContext
方法获取房间上下文。调用此方法时,您需要将 roomUid 设置为您所加入房间的 ID。
-
调用
muteMemberVideo
方法,关闭房间中某个成员的视频。
示例代码
auto context = m_pRoomKit->getRoomService()->getRoomContext(roomUuid);
if(context){
std::string userUuid = "123456";
context->getRtcController()->muteMemberVideo(userUuid, [this](int code, const std::string& msg) {
});
}
打开房间内其他成员的视频
注意事项
您可以在云信控制台上配置某角色是否具备打开房间内其他成员的视频的权限,只有具备该权限的角色才可以执行此操作。
配置步骤
-
加入房间后,调用
getRoomContext
方法获取房间上下文。调用此方法时,您需要将 roomUid 设置为您所加入房间的 ID。
-
调用
setupRemoteVideoCanvas
方法设置远端成员画布。 -
调用
unmuteMemberVideo
方法,打开房间中某个成员的视频。调用此方法时,您需要将
targetUid
设置为待打开视频的成员的 ID。一次只允许传入一个 uid。
示例代码
auto context = m_pRoomKit->getRoomService()->getRoomContext(roomUuid);
if(context){
std::string userUuid = "123456";
context->getRtcController()->unmuteMemberVideo(userUuid, [this](int code, const std::string& msg) {
});
}
API 参考
方法 | 功能描述 |
---|---|
getRoomContext | 获取房间上下文。 |
muteMyVideo | 关闭本地视频。 |
unmuteMyVideo | 打开本地视频。 |
setupLocalVideoCanvas | 设置本地视图。 |
muteMemberVideo | 关闭房间内某个成员的视频。 |
unmuteMemberVideo | 打开房间内某个成员的视频。 |
setupRemoteVideoCanvas | 设置远端成员画布。 |
此文档是否对你有帮助?