一、方案对比
使用直播组件 TUILiveKit 和使用 IM 直接搭建直播间和两种方案的对比如下:
| 维度 | TUILiveKit 搭建直播间 | IM 搭建直播间 |
| 定位 | 全场景一体化直播组件,预置开源 UI 和完整直播业务逻辑,组件底层使用 IM 与 TRTC,可直接使用对应功能。 | 基于底层 IM SDK、直播 SDK、TRTC、云直播多款产品,自主组合搭建直播业务逻辑。 |
| 适用用户 | 开发周期有限、需快速上线标准直播功能的用户 | 定制化需求较高的用户 |
| 上线时间 | 最快1天集成,1周上线 | 2-4个月 |
| 开发难度 | 低;仅需数十行代码搭建完整直播间 | 高;需自主使用 IM SDK、TRTC SDK、直播 SDK 等多个产品接口,并设计、开发所有业务逻辑和 UI。 |
| 定制能力 | 支持 UI 和部分业务逻辑定制 | 完全自定义所有功能 |
| 支持平台 | iOSAndroidWeb & H5Flutteruni-appElectron(PC 端直播推流助手) | 最终会依赖于所有产品共同支持的平台。 |
二、重点功能差异
| 搭建方案 | 直播组件 TUILiveKit | IM 搭建直播间 |
| 音视频流相关 | TUILiveKit 是一站式的直播解决方案,音视频相关的逻辑全部都已默认包含,其中涉及主播开播、观众观看、单直播间连麦、跨直播间连线 PK 等。 | IM 本身不具备音视频流相关能力,需对接直播 SDK、云直播、TRTC 等其他产品实现相关功能。 |
| 麦位管理 | 提供完整上下麦、权限等麦位管理能力 | 需基于 IM 自定义属性能力自主实现麦位管理能力 |
| 跨直播间连线 PK | 提供完整的跨房连线以及 PK 服务 | 需自主对接 TRTC SDK 实现 |
| 送礼点赞 | 提供礼物配置、观众送礼、礼物通知与统计等全链路方案 | 基于 IM 消息相关能力,自主实现业务逻辑 |
| 互动弹幕 | 已基于 IM 消息能力完成封装,可直接使用或调整 | 基于 IM 消息能力,自主实现业务逻辑 |
| 默认 UI | 下图为默认 UI ,UI 部分开源,可自主修改,也可不使用 | 不包含,需自主搭建 |
三、直播音视频流相关
TUILiveKit 是一站式的直播解决方案,音视频相关的逻辑全部都已默认包含;IM 本身不具备音视频流相关能力,需对接直播 SDK、云直播、TRTC 等其他产品实现相关功能。
| 模块 | TUILiveKit | IM 直播间 |
| 主播开播 | TUILiveKit 自带开播能力及 UI,包含 App 端、PC(Electron)端、Web/H5端、uni-app 端,同时支持对接 OBS 开播工具。 | 自主对接其他的 SDK(直播 SDK/TRTC SDK 等)和工具实现开播 。 |
| 观众观看 | TUILiveKit 自带观众观看能力及 UI,包含 App 端、Web 端。 | 自主对接其他的 SDK(直播 SDK/TRTC SDK 等)和工具实现观播。 |
| 单房间连麦 | TUILiveKit 预置所有连麦相关逻辑。 | 自主对接 TRTC SDK 实现 |
| 跨房连线 PK | TUILiveKit 预置所有 PK 相关逻辑。 | 自主对接 TRTC SDK 实现 |
四、连麦管理
连麦是直播场景中的核心互动功能,一般涉及音频连麦、视频连麦和麦位管理能力,其中麦位管理主要用于管理直播间内用户的上下麦状态及权限。TUILiveKit 提供了一套完整的连麦能力,而 IM 直播间方案则需要开发者基于底层能力自主实现。
| 维度 | TUILiveKit | IM 直播间 |
| 整体方案 | 提供包含音视频连麦及管理的麦位 UI、业务逻辑和信令交互的全链路麦位管理,支持多种连麦布局模板。 | 需自主对接 TRTC SDK 实现音视频连麦逻辑,另外需基于 IM 群组与 TRTC 的底层接口,自主设计并实现所有麦位管理逻辑。 |
| 音视频连麦 | 内置多种常见连麦布局模板,可直接使用。 | 需自主对接 TRTC SDK,管理房间内音视频流订阅逻辑及状态信息。 |
| 麦位管理 | 内置申请上麦、邀请上麦、主动下麦、强制下麦、锁麦等核心操作逻辑与信令。 | 需自主实现所有麦位状态管理、权限控制及上下麦信令同步。 |
| UI 组件 | 提供开箱即用的麦位列表 UI 组件,支持多种布局样式。 | 需完全自主设计并开发麦位相关的所有用户界面。 |
| 开发难度 | 低。开发者只需关注业务定制,无需处理底层复杂交互。 | 高。需要深入理解音视频与即时通信的联动,并编写大量控制逻辑和 UI 代码。 |
TUILiveKit 内关于麦位能力的相关 UI 展示如下:
| 麦位展示(默认九宫格布局) | 观众申请连麦 | 主播管理麦位列表 | 主播管理麦位 |
| | | | |
五、直播间送礼
TUILiveKit 和 IM 在礼物和点赞消息方案上实现差异较大。TUILiveKit 直播间内常见的礼物相关 UI 内容如下:
| 送礼面板 | 礼物通知(子弹通知) | 礼物通知(弹幕消息) | 全屏礼物动画 |
| | | | |
TUILiveKit 与 IM 直播间在实现送礼功能的差异如下:
| | TUILiveKit | IM 搭建直播间 |
| 整体方案 | 提供礼物配置 > 发送 > 通知 > 展示 > 统计的全链路送礼接口。 | 基于 IM 的自定义消息,在群内发送消息实现礼物消息展示,其他关联模块需自主搭建。 |
| 礼物配置 | 参考 礼物配置指引 提前配置好礼物素材。 | 需自主实现 |
| 礼物展示 | TUILiveKit 客户端自动拉取 礼物配置指引 配置的礼物信息,并展示在礼物面板中。 | 需自主实现 |
| 计费对接 | 业务后台通过 送礼前回调 获取用户送礼行为,用于计费校验。流程可参考 计费与送礼扣费流程。 | 1. 客户端短连接请求到自己的业务服务器,涉及到计费逻辑。2. 计费后,发送人直接看到 XXX 送了 XXX 礼物。(用于确保发送人自己看到自己发的礼物,消息量大的时候,可能会触发抛弃策略)。3. 计费结算后,调用服务端接口发送自定义消息(礼物)。 |
| 发送礼物 | 提供完整 UI 及送礼 接口,发送后自动通知。特点如下:送礼接口频控独立:不与其他消息共用。礼物通知走系统消息进行通知,不会丢弃,不受频控限制,不受禁言限制。客户端的送礼面板及后台均已默认支持送礼连击优化。 | 基于 IM 自定义消息的能力,在群内发送礼物消息。注意事项:共用自定义消息的频控:消息量大的时候可能会触发抛弃策略。禁言用户将无法发送自定义消息,因此禁言用户无法送礼。如果遇到连刷礼物的场景需要自主进行消息合并。 |
| 礼物渲染 | TUILiveKit 客户端自动渲染礼物动画。 | 需自主实现 |
| 统计相关 | 可通过 礼物统计 获取直播的礼物数据,同时后台会存储前述所有接口调用记录。 | 需自主实现 |
六、在线观众列表
在线观众列表功能用于展示直播间内的在线观众信息,包括观众头像、昵称等。TUILiveKit 和 IM 直播间在实现该功能时存在显著差异。
| | TUILiveKit | IM 直播间 |
| 接口/UI | 提供预置的成员列表 UI 组件,自动集成并显示在线观众列表,支持实时更新成员加入/退出。 | 需自主使用 IM SDK 的群组管理接口(例如 getGroupMemberList)获取成员数据,并自行设计 UI 界面和更新逻辑。 |
| 功能支持 | 内置成员列表的渲染、滚动、基本交互(如主播端点击查看详情),无需额外开发。 | 需完全自主实现成员列表的获取、UI 布局、事件监听(如成员变化)和交互功能。 |
| 客户端 UI | | 需自主实现 |
七、下一步
阅读这篇档后,你已全面了解两种直播间搭建方案的核心差异。为帮助你顺利推进项目,你可以参考以下行动指南。
·若选择 TUILiveKit:
·免费试用:参考 开通体验版 ,通过腾讯云控制台申请免费体验版,进行集成测试。
·体验 Demo:参考 跑通 Demo 下载并运行示例项目,直观了解功能实现。
·集成开发:依据文档将组件接入你的项目,并根据需要调整 UI 或逻辑。你可参考 接入方式指引,选择最适合你的 LiveKit 接入方式并集成开发。
·若选择 IM 直播间方案:
·技术规划:详细设计直播间功能架构,包括消息、音视频、管理等模块的交互逻辑。
·产品学习:分别熟悉 IM API 、TRTC API 等核心产品的文档和接口,同时也可以参见 IM 搭建直播间。
·资源准备:在腾讯云控制台创建应用并配置相关服务(如推流域名、密钥等)。
·开发实施:自主实现业务逻辑和 UI 界面,协调多 SDK 完成功能集成。