腾讯云SDK、TRTC相关原理、直播中台SDK的作用
1、腾讯云SDK 1.1、腾讯云实时调用(TRTC)
产品概述
产品特点
接口文档
1.2、腾讯云即时通讯(IM)
产品概述
产品特点
接口文档
%E6%A6%82%E8%A7%88.html
1.3、腾讯云交互白板(TIW)
产品概述
接口文档
1.4、访问腾讯云
选择哪个版本的腾讯云音视频SDK,视产品需求而定。我们的产品需求是针对直播、直播、点播、基础美颜、基础滤镜、音视频通话,所以选择了专业版。 Line和Surface是腾讯提供的几个接入版本,根据产品需求选择。
产品需求涉及弹幕、送礼、点赞、好友管理、抽奖、领券等活动视频直播sdk,需要用到IM消息,所以需要集成IM SDK。
产品需求涉及文档共享、数据讲解、刷道同步,所以还需要集成白板SDK。
1.5、TRTC相关原理
绕过直播
云端混音转码
云端录制和播放
2、直播中台SDK2.1、直播中台SDK功能
1、提供基本的音频和视频通话、IM 即时消息和文档共享功能。
2、音视频基础能力关闭。直播中端SDK是唯一提供音视频能力的出路。各业务线集成直播中端SDK,降低接入成本,提高开发效率,避免重复依赖。 .
2.2、直播SDK架构设计2.2.1、业务状况
业务状况
直播中心sdk的商业模式分为四个部分:
看一下助手:在这个场景中,平台SDK主要提供云直播的基本功能,不参与具体业务的逻辑。会议场景:培训场景2.2.2、架构图
目前android端的直播架构采用单组件、多模块的开发方式,大致分为三层:
2.2.3、MVP 架构
UI框架基于MVP模型,在MVP模型上扩展
一个Activity对应多个Presenter,每个Presenter都有明确的分工。业务相对独立。 Presenter和View通过多重继承解耦不同场景的业务代码,满足Liskov替换原则。接口,在隔离接口的同时,也满足依赖倒置和倒置的原则2.3、音视频通话的交互过程2.3.1、主机端
主播进入直播间(串流)大致分为11个步骤:
1、loadtoken:加载令牌到服务器
2、loadLiveInfo:获取直播间的基本信息
3、checkWifiMode:如果是非wifi情况,弹出确认提醒
4、requestEnterRoom:向服务器发送请求进入房间
5、getUserPermission:访问服务器获取用户权限信息。
6、开启长连接心跳,轮流上报服务器在线状态。
7、检查是否有权限打开直播间,如果有,进入下一步
8、startLive:告诉服务器用户即将开始直播
9、enterRoom:根据服务器的配置参数,调用sdk初始化直播间,开始直播,
10、启用麦克风捕获、编码 AAC 并上传到云服务器
11、开启摄像头,编码H264并上传到云服务器,直播完成
2.3.2、查看者
直播流程如下:
与主机相比,客户端逻辑少(拉流),步骤如下:
1、loadtoken:加载令牌到服务器
2、loadLiveInfo:获取直播间的基本信息
3、requestEnterRoom:向服务器发送进入房间的请求
4、getUserPermission:访问服务器获取用户权限信息。
5、开启长连接心跳,轮换训练时上报服务器在线状态
6、startCdnPlayer:根据服务器发送的url地址,播放视频流
腾讯云推荐CDN播放使用flv格式,延迟低,相比RTMP节省部分协议交互时间,缩短首帧上屏时间。
当用户进入直播间,直播已经结束,且直播间有播放功能,云端会自动将视频文件保存为m3u8或mp4。这时候观众又进入了,是点播播放。流程如下:
点播比直播更简单:
如果判断直播已经结束,直接请求服务器的录制信息,获取m3u8链接,直接使用播放器播放
这个过程逻辑简单视频直播sdk,不具备以下功能:
无需调用 requestEnterRoom 来请求房间入口
无需调用getUserPermission获取用户权限
无需调用 startHartBeat 即可启动心跳
2.3.3、即时信号
基于IM,用户可以发起弹幕消息和控制信令。以下是连麦新闻的一个例子。
有两种类型的消息发送
1、客户端直接调用腾讯IM SDK发送消息给腾讯云,腾讯云发送给指定用户。
2、客户端请求直播中台服务,直播中台服务发消息给腾讯云(restful call),腾讯云转发给用户。
-
视频直播sdk 亚洲四大邪术大家应该都听过吧,美颜相机也因此横空出世
2022-04-14