基本概念

最后更新时间:2021-08-27 16:32:16

    本文旨在介绍您在使用实时音视频 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 直播观看。详情请参见 实现 CDN 直播观看 文档。

    云端录制

    TRTC 采用旁路推流的方式使用 云直播 的能力为您提供全程的云端录制功能(即录音/录像),并将录制下来的文件存储到 云点播 平台,保证录制过程的可靠性和实时性。详情请参见 云端录制与回放 文档。

    云端混流转码

    CDN 直播观看云端录制等应用场景中,可能需要将 TRTC 房间里的多路音视频流混合成一路,您可以使用 TRTC 云服务后台的 MCU 混流转码集群来完成该项工作。MCU 集群能将多路音视频流进行按需混合,并将最终生成的视频流分发给直播 CDN 和云端录制系统。详情请参见 云端混流转码 文档。

    哑终端

    哑终端作为观众进入房间拉流时不会被其他 SDK 感知到(远端收不到哑终端的进出房事件通知)。