前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >直播平台搭建,移动直播平台源码搭建,降低延迟应该这样做

直播平台搭建,移动直播平台源码搭建,降低延迟应该这样做

原创
作者头像
布谷鸟小刘
修改2021-02-06 18:38:14
2.6K0
修改2021-02-06 18:38:14
举报
文章被收录于专栏:用户7603185的专栏

移动直播已经成为大家茶余饭后消遣娱乐的方式之一,直播平台搭建也逐渐走进大家的视野。对于开发者来讲,除了关注如何能快速实现不同应用场景重点音视频通讯,另一个更需要关注的可能就是“低延时”。因为这将直接影响直播的用户体验,涉及到一个直播平台的成败。

直播平台搭建场景主要有以下几种:

秀场直播

这个不用说,在各个直播平台都存在的形式

游戏直播

游戏直播对码率要求比较高,观看人数也多,所以它也是流量贡献最大的直播形式。

移动直播

移动直播是最近一两年比较火的直播形式,比较明显的特点就是推流和播放比较容易, 通过手机APP就可以进行直播,所以手机直播一般也是推流数最多的直播形式。

活动赛事直播

这类直播一般对交互要求不高,所以一般都是HLS播放形式,延迟相对其他都会多一些。

答题直播

新型直播形式,每场直播的时间不长,突发流量比较高。

像移动直播、游戏直播等场景因为涉及到实时性的互动,对延时的要求也比较高。3~5秒延时基本上满足之前遇到的直播形式,但在某些场景下,直播的体验非常差,例如我们最常见的连麦,如果延时超过了1s,基本上整段垮掉。我们先来看一下延时是如何产生的。

在直播平台搭建的音视频传输过程中,不同阶段都会产生延时,总体可以分为三类:

1、设备端上的延时:包括采集端的采集、前处理、编码,播放端的接收、解码、后处理过程产生的延时,以及两端在编码后和解码前产生端网络延时。

2、设备端与服务器间延时:包括采集端传输数据到服务器的延时,以及服务器传输数据到播放端的延时。

3、服务器之间的延时:包括服务器间的传输延时、排队延时、服务器处理延时。

在直播平台搭建中如何降低延迟呢?在开发时候要怎么做呢?

1、对于这种场景,现在一般的直播平台采取的方案一般是借助第三方的连麦服务,然后再推给CDN厂商来加速视频传输的速度。

CDN就是视频加速,比如你的服务器在广州,而用户在北京,北京的用户看视频就会觉得很卡,CDN就是只能选择离用户最近的网络节点,北京的用户用北京的网络节点看视频,就不卡了。

2、推流、播放的优化

在开发音视频直播APP的时候,则会根据客户的需求定制专门的音视频SDK功能。在音视频效率和延迟方面,可根据不同的需求去优化相对应的音视频采集和处理能力,也可以在网络情况不好的情况下,降低码率进行播放,减少延迟。

3、传输协议的优化

手机视频直播APP是通过互联网进行传播的,所以也就会存在传输协议,而在传输的过程中想要降低整体的传输延迟,就需要使用到RTMP而不是基于HTTP的HLS协议进行传输。另外也可以使用定制的UDP协议来替换TCP协议,省去弱网环节下的丢包重传也可以起到降低延迟的作用。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
实时音视频
实时音视频(Tencent RTC)基于腾讯21年来在网络与音视频技术上的深度积累,以多人音视频通话和低延时互动直播两大场景化方案,通过腾讯云服务向开发者开放,致力于帮助开发者快速搭建低成本、低延时、高品质的音视频互动解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档