在使用腾讯的TRTC Web SDK可以在Web端实现主播的直播流推送和观众的拉流观看,但是由于 TRTC 采用 UDP 协议进行传输音视频数据,在直播时可能会遇到一些问题:
1、高并发观看问题
TRTC 的低延时观看能力,单房间支持的最大人数上限为10万人。CDN 观看虽然延迟要高一些,但支持10万人以上的并发观看,且 CDN 的计费价格更加便宜。
2、移动端网页播放
TRTC 虽然支持 WebRTC 协议接入,但主要用于 Chrome 桌面版浏览器,移动端浏览器的兼容性非常不理想,尤其是 Android 手机浏览器对 WebRTC 的支持普遍都很差。所以如果希望通过 Web 页面在移动端分享直播内容,还是推荐使用 HLS(m3u8) 播放协议,这也就需要借助直播 CDN 的能力来支持 HLS 协议。
CDN 直播观看,也叫 “CDN 旁路直播”,由于 TRTC 采用 UDP 协议进行传输音视频数据,而标准直播 CDN 则采用的 RTMPHLSFLV 等协议进行数据传输,所以需要将 TRTC 中的音视频数据旁路到直播 CDN 中,才能在让观众通过直播 CDN 进行观看。
所以要解决以上两个问题,腾讯云会使用一批旁路转码集群,将 TRTC 中的音视频数据旁路到直播 CDN 系统中,该集群负责将 TRTC 所使用的 UDP 协议转换为标准的直播 RTMP 协议。
1、单画面的旁路直播
当 TRTC 房间中只有一个主播时,TRTC 的旁路推流跟标准的 RTMP 协议直推功能相同,不过 TRTC 的 UDP 相比于 RTMP 有更强大的弱网络抗性。
2、混合画面的旁路直播
TRTC 最擅长的领域就是音视频互动连麦,如果一个房间里同时有多个主播,而 CDN 观看端只希望拉取一路音视频画面,就需要使用云端混流服务将多路画面合并成一路。
在腾讯云控制台给TRTC开启旁路推流之后,就可以使用Client对象的startMixTranscode方法进行云端混流转码到直播CDN系统
了解更多可见实现CDN直播观看。
播放器SDK
播放器SDK属于免费的产品,可以集成到Web端,安卓和iOS,播放器 SDK 基于腾讯云强大的后台能力与 AI 技术,为客户提供视频点播和直播播放能力的强大播放载体。播放器 SDK 深度融合腾讯云点播、云直播服务,拥有流畅稳定的播放性能,集广告植入、数据监测等功能于一身,覆盖多类应用场景,满足客户多样需求,让客户轻松聚焦于业务发展本身,畅享极速高清播放新体验。播放器 SDK 目前处于公测阶段,为了获取更好的产品功能及播放性能体验,建议结合腾讯云点播和云直播使用。
Web端针对不同的业务场景和使用场景,分为两个播放器:1、点播超级播放器 2、TCPlayer Lite 要在Web端实现CDN直播观看,需要使用TCPlayer Lite。
TCPlayer Lite:独立播放器 TCPlayer Lite 实现了基本的视频播放器功能,采用 HTML5 和 Flash 相结合的播放模式,支持播放 HLS、MP4 格式的点播视频和 RTMP、HTTP-FLV、HLS 协议的直播视频,支持主要的桌面和移动端浏览器。该播放器仅支持传入地址播放,不关联业务,适用于轻量化 Web 视频播放场景,支持点播和直播,支持通过 CSS 定制化界面。
具体介绍请参见:使用文档