跨房间连麦

更新时间:2021-05-26

功能描述

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

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

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

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

linkRoom1

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

linkRoom2

相关 API

跨房间连麦

  • 调用跨房间连麦方法 linkRoom,拉取指定房间的流到本房间,该房间内其他用户可直接拉取观看。
`linkRoom` 会触发 `OnAddRemoter` 有成员加入的回调,可直接拉取对应音视频数据。
/**
 * 跨房间连麦
 *
 * @param roomId 房间Id
 * @param linkUserId pk UserId
 * @return true:接口调用成功 false: 1.roomId为空;2.未鉴权
 */
mRtcEngine.linkRoom(String roomId, String linkUserId);

取消跨房间连麦

  • 取消连麦时传指定房间号和即将取消的用户 ID,调用 unlinkRoom 方法结束跨房间连麦
`unlinkRoom` 会触发 `OnDeleteRemoter` 有成员离开的回调
/**
     * 取消跨房间连麦功能
     *
     * @param roomId 房间Id
     * @param unlinkUserId 取消 pk UserId
     * @return true:接口调用成功 false:roomId为空
     */
    mRtcEngine.unlinkRoom(String roomId, String unlinkUserId);

业务参考步骤

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