Product Concepts
本文旨在介绍您在使用实时音视频 TRTC 服务过程中可能会涉及到一些基本概念。
应用
TRTC 通过应用的形式来管理不同的业务或项目。您可以在 TRTC 控制台 给不同的业务或项目分别创建不同的应用,从而实现业务或项目数据的隔离。每个腾讯云账号最多可以创建100个 TRTC 应用。
SDKAppID
SDKAppID(应用标识/应用 ID)是腾讯云后台用来区分不同 TRTC 应用的唯一标识,在 TRTC 控制台 创建应用时自动生成。不同 SDKAppID 之间的数据不互通。
UserID
UserID(用户标识)用于在一个 TRTC 应用中唯一标识一个用户。
- 用户标识是用户登录开发者业务系统的帐号在腾讯云上的映射。通常情况下,开发者可直接使用用户名作为 UserID。
- 取值范围长度建议不超过32字节。请使用英文字符、数字或下划线,区分大小写。
房间
房间是一个音视频空间,同一房间内的用户可以互相接收对方的实时音视频数据。
- TRTC 使用房间这个虚拟的概念,用于用户之间的相互隔离。
- 只有在同一个房间里的用户才可以相互接收音视频。
- 一个用户同一时间只能在一个房间内。如果要进入另一个房间,必须从前一个房间内退出。
注意:
- 第一个加入房间的用户为当前房间的所有者,但该用户无法主动解散房间。
- 通话模式下:所有用户都主动退房时,后台立即解散房间。
- 直播模式下:最后一个退房的用户是主播角色时,后台立即解散房间;最后一个退房的用户是观众角色时,后台等待10分钟后解散房间。
- 如果房间内的单个用户异常掉线,90秒后服务端会将该用户清理出当前房间。如果房间内的所有用户都异常掉线,90秒后服务端会自动解散当前房间。用户异常掉线等待时长会被纳入计费用时统计。
- 当用户要加入的房间不存在时,TRTC 后台会自动创建一个房间。
RoomID
RoomID(房间号/房间ID)用于在一个 TRTC 应用中唯一标识一个房间。RoomID 是由开发者自行维护和分配的一个 uint32 范围内的数字,取值区间:1 - 4294967295。
UserSig
UserSig(用户签名)是腾讯云设计的一种安全保护签名,用于对一个用户进行登录鉴权认证,确认用户是否真实,阻止恶意攻击者盗用您的云服务使用权。详情请参见 UserSig 相关问题 文档。
推送
推送指用户将本地的音视频数据上传给 TRTC 服务端的操作,对应“推流”。
订阅
订阅指用户向 TRTC 服务端请求拉取指定用户音视频数据的操作,对应“拉流”。
角色
TRTC 支持 主播(TRTCRoleAnchor)和 观众(TRTCRoleAudience)两种角色,二者区别在于:
- 主播角色既支持向服务端推送自己的音视频数据,也支持从服务端订阅并播放其他主播角色的音视频数据。
- 观众角色仅支持从服务端订阅并播放主播角色的音视频数据。
在通话模式下,所有进房用户都是主播角色。在直播模式下,您可以根据实际业务场景将进房用户分为主播和观众两种角色,同一个用户可以随时切换角色。
CDN 直播观看
CDN 直播观看,又称 “CDN 旁路直播”。TRTC 在云端使用旁路转码集群,将 TRTC 所使用的 UDP 协议转换为标准的直播 RTMP 协议,把 TRTC 的音视频数据推送到标准的云直播系统中,再经由 CDN 进行分发,从而实现 CDN 直播观看。
云端录制
TRTC 采用旁路推流的方式使用 云直播 的能力为您提供全程的云端录制功能(即录音/录像),并将录制下来的文件存储到 云点播 平台,保证录制过程的可靠性和实时性。详情请参见 云端录制与回放 文档。
云端混流转码
在 CDN 直播观看和云端录制等应用场景中,可能需要将 TRTC 房间里的多路音视频流混合成一路,您可以使用 TRTC 云服务后台的 MCU 混流转码集群来完成该项工作。MCU 集群能将多路音视频流进行按需混合,并将最终生成的视频流分发给直播 CDN 和云端录制系统。
哑终端
哑终端作为观众进入房间拉流时不会被其他 SDK 感知到(远端收不到哑终端的进出房事件通知)。