设置旁路直播布局
本文介绍如何设置旁路直播的布局。
说明
设置旁路直播的布局有两种方式,第一种是使用预设好的4种布局,第二种是进行自定义布局。
设置旁路直播布局可以在旁路直播开始前调用,也可以在旁路直播进行中调用。
设置的旁路直播布局,同时也是录制的视频布局,关于录制功能可以通过录制查看。
设置旁路直播预设布局API使用示例
预设的布局目前支持4种,分别是相机流一宫格、相机流五宫格(一大四小)、相机流九宫格和屏幕共享流。
iOS端(Objective-C):
// 设置旁路直播预设布局
id<AIRBRoomChannelProtocol> room = [[AIRBRoomEngine sharedInstance] getRoomChannelWithRoomID:@"xxx"]
[room.rtc setBypassLiveLayout:(AIRBRTCBypassLiveLayoutType)type
userIDs:(NSArray<NSString*>* _Nonnull) userIDs
onSuccess:(void(^)(void))onSuccess
onFailure:(void(^)(NSString* error))onFailure];
Android端(Java):
// 设置旁路直播预设布局
rtcService.setLayout(List<String> userIds, RtcLayoutModel layoutModel, Callback<Void> callback);
Windows端(c++):
// 设置旁路直播预设布局
auto room_ptr = alibaba::meta_space::MetaSpace::GetInstance()->GetRoomInstance(room_id);
auto rtc_plugin = std::dynamic_pointer_cast<IRtc>(room_ptr->GetPlugin(PluginRtc));
std::vector<std::string> uids;
alibaba::meta::RtcLayoutModel layout_model;
rtc_plugin->SetLayout(uids, layout_model, [](){}, [](const ::alibaba::dps::DPSError & error_msg){});
设置旁路直播自定义布局API使用示例
iOS端(Objective-C):
// 设置旁路直播自定义布局
id<AIRBRoomChannelProtocol> room = [[AIRBRoomEngine sharedInstance] getRoomChannelWithRoomID:@"xxx"]
[room.rtc setCustomBypassLiveLayout:(NSArray<AIRBRTCBypassLiveLayoutPeerVideoModel*>*) peerModels
onSuccess:(void(^)(void))onSuccess
onFailure:(void(^)(NSString* error))onFailure];
Android端(Java):
// 设置旁路直播自定义布局
rtcService.setCustomBypassLiveLayout(Collection<RTCBypassPeerVideoConfig> configCollection, Callback<Void> callback);
Windows端(c++):
// 设置旁路直播自定义布局
暂不支持