跨房间连麦

更新时间:2021-05-26

功能描述

跨直播间连麦功能,指的是主播的流可以同时转发到多个直播房间内,实现主播跨房间与其它直播间的主播进行实时互动的场景。

连麦成功后,频道中的所有主播可以看见彼此,并听到彼此的声音,频道中的观众可以看到所有主播,并听到主播的声音。

该功能常用于 PK 连麦场景直播间合唱 等场景。

  • 未连麦情况下,观众只能拉取到各个单独直播间的流,并且主播之间不能相互通话连麦。

    linkRoom1

  • 主播1 和 主播2 分别开播自己的直播间,连麦后,不同房间的主播即可相互通话和看到对方的画面,观众进入任意直播间也能看到直播间内所有主播。

    linkRoom2

相关 API

跨房间连麦

  • 调用跨房间连麦方法 linkRoom,拉取指定房间的流到本房间,该房间内其他用户可直接拉取观看。

linkRoom 会触发 OnAddRemoter 有成员加入的回调,可直接拉取对应音视频数据。


/// 房间之间 PK(跨房间连麦功能)
/// @param roomId 房间 ID
/// @param pk 对象 userId
- (void)linkRoom:(NSString *)roomId linkUserId:(NSString *)linkUserId;

取消跨房间连麦

  • 取消连麦时传指定房间号和即将取消的用户 ID,调用 unlinkRoom 方法结束跨房间连麦

unlinkRoom 会触发 OnDeleteRemoter 有成员离开的回调

/// 取消跨房间连麦功能
/// @param roomId 房间 ID
/// @param unlinkUserId 取消 pk 对象 userId
- (void)unlinkRoom:(NSString *)roomId unlinkUserId:(NSString *)unlinkUserId;

业务参考步骤

  1. A 主播开播(房间号1001)
  2. B 主播开播(房间号1002)
  3. A 主播 linkRoom B主播房间号1002
  4. B 主播 linkRoom A主播房间号1001
  5. A,B 主播跨房间连麦成功。