- ACK机制导致通道利用率低

文章插图
ACK机制会导致通道利用率低,在ACK之后不是立马就返回的,还有ACK的等待时间 。在这段时间通道未被利用就会导致通道利用率变低 。
- 无流媒体特性、可靠传输导致无效重传
直播是有时效性的,上图1、2、3、4、5、6,可以看到5、6数据已经过期了,但无效的重传会一直重传,直到传输成功,所以无效重传进一步加剧拥塞 。
综合以上四点可以得出TCP不适合低延迟直播 。
快直播(超低延迟直播)方案
【腾讯云快直播——超低延迟直播技术方案及应用】3.1 UDP是低延迟直播的必由之路

文章插图
调研显示,低延迟直播在业界的协议有QUIC、SRT、WebRTC、ORTC,比较而言QUIC的延时还是比较大的,因为他没有流媒体功能;SRT、WebRTC、ORTC延迟都是毫秒级别的,都有流媒体特性,其中SRT、ORTC用的比较少,WebRTC生态繁荣,因此我们选择了WebRTC做超低延迟 。
3.2 延迟关键问题在哪里?

文章插图
我们要做超低延迟,首先就要知道它们的超低延迟出现在哪里?整个直播过程从数据的采集、编码都经过哪些过程?
首先是视频输入摄像头采集的数据,由YUV编码成264、265数据,采集t0,编码t1,推流传输t2,转码t3,再由CDN传输,经过视频解码,最终通过视频显示出来 。在这个过程中摄像头采集耗时很小,一般在十几毫秒左右;编码耗时通过调整编码参数也能达到几十毫秒;推流传输是和rtp相关的,基本耗时在十几毫秒到几十毫秒;如果采取高速转码,耗时也不高;最关键的是CDN传输和视频解码,用户的网络现在千奇百怪,对于网络条件好的用户,传输延迟可能不高,但对于网络条件不好的用户,传输延迟可能就要达到几秒甚至几十秒,所以TCP传输延迟是一个不可控的因素 。在t5视频播放和解码阶段,目前像Flash播放器、hls、rtmp播放器缓存需要6-10秒,播放器的缓存是产生延迟的关键原因 。那为什么不在当前直播条件下把缓存调到0呢?这是由于调到0之后延迟虽然小了,但卡顿会很高 。由此可以看到,延迟高的关键在于CDN的传输和播放解码没有很好地配合和互动 。所以我们主要要解决这个问题 。
3.3 快直播方案

文章插图
快直播方案改造的就是从CDN分发节点到SDK、再到观众端播放这部分,这样的好处在于主播推流中间的录制、截图、转码等都可以复用,接入简单,可以同时出flv、rtmp、hls、WebRTC的数据流 。
3.4 快直播对标准WebRTC进行了升级

文章插图
此外快直播对标准WebRTC进行了升级 。标准WebRTC存在很多限制,音频只支持OPUS、视频不支持H265(H265因为专利的一些问题,因为VP9和H265有竞争关系,谷歌更希望推VP9)、视频不支持B帧、信令交互耗时长、无法透传metadata,这些问题对于在线教育和主播带货是没必要的,可以跳过 。而有些客户希望用metadata带一些同步信息,显然标准WebRTC是不支持的 。
我们从五个方面对标准WebRTC进行升级,包括支持aac(同时支持adts、latm两种封装)、视频支持H265和B帧、通过STP协商精简了信令交互、可以关闭gtrs以及支持透传metadata 。上图就是腾讯云快直播的Demo,从图中可以看到支持H264、H265,Audio格式、加密开关 。
3.5 快直播如何接入

文章插图
快直播的接入其实非常简单,只需要一步就可以从标准直播升级为快直播——升级播放端、其余全部复用 。Web/H5端调用浏览器WebRTC接入快直播,App接入需要集成SDK 。
3.6 快直播优势

文章插图
快直播有五大优势:
1.全球分布、覆盖广泛(支持1100+节点,支持25个国家)
2.超大带宽容量(我们的部门拥有了腾讯90%的流量,支持100T+带宽)
推荐阅读
- 下一代视频编码技术的云视频应用探索
- 苍山雪绿的品质如何,雪茶在云南苍山的引种
- 庐山云雾茶购买误区,庐山云雾茶冲泡方式之饮茶品茶
- 少前云图计划官网 少前云图计划和少前2
- 龙马同庆号红印解析,云贵高原有机茶开采
- 2020云顶之弈吃鸡阵容搭配推荐 云顶之弈吃鸡最强阵容
- 碧螺春和庐山云雾,庐山云雾的传说介绍
- 柴犬生日快乐表情包 柴犬送人后会再认主人?
- AMD|AMD RX 6750 XT首次现身:只比RX 6700 XT快2%?
- 印度人口增长快的原因 印度而且目前人口增长速度越来越什么
