随着互联网商业形式上的相对固化,内容正日益成为竞争的焦点。实时APP直播行业也是如此,前期用户被秀场模式吸引而来,如果没有优质的运行体验让用户继续留下来的话,用户流失便在所难免。
先来解释下什么是实时直播APP源码,实时直播就是视频图像从产生到消费完成整个过程人感觉不到延迟,只要符合这个要求的直播业务都可以称为实时直播APP源码。关于直播的实时性归纳为三个等级:
伪实时:直播消费延迟超过 3 秒,单向观看实时,通用架构是 CDN + RTMP + HLS,现在基本上所有的直播都是这类技术。
准实时:直播消费延迟 1 ~ 3 秒,能进行双方互动但互动有障碍。有些直播网站通过 TCP/UDP + FLV 已经实现了这类技术,YY 直播属于这类技术。
真实时:直播消费延迟 < 1秒,平均 500 毫秒。这类技术是真正的实时技术,人和人交谈没有明显延迟感。
实时直播APP开发一个关键的环节就是网络传输技术,不管是早期 VoIP,还是现阶段流行的视频直播,其主要手段是通过 TCP/IP 协议来进行通信。但是 IP 网络本来就是不可靠的传输网络,在这样的网络传输视频很容易造成卡顿现象和延迟。
对直播APP源码开发有过了解的人都会认为做视频传输首选的就是 TCP + RTMP,其实这是比较片面的。在大规模实时多媒体传输网络中,TCP 和 RTMP 都不占优势。TCP 是个拥塞公平传输的协议,它的拥塞控制都是为了保证网络的公平性而不是快速到达,我们知道,TCP 层只有顺序到对应的报文才会提示应用层读数据,如果中间有报文乱序或者丢包都会在 TCP 做等待,所以 TCP 的发送窗口缓冲和重发机制在网络不稳定的情况下会造成延迟不可控,而且传输链路层级越多延迟会越大。
在实时传输中使用 UDP 更加合理,UDP 避免了 TCP 繁重的三次握手、四次挥手和各种繁杂的传输特性,只需要在 UDP 上做一层简单的链路 QoS 监测和报文重发机制,实时性会比 TCP 好,这一点从 RTP 和 DDCP 协议可以证明这一点。
所以在进行实时直播APP源码开发时,一定要做好内容运行上的流畅度,用户才能留存下来。
领取专属 10元无门槛券
私享最新 技术干货