文 / red5pro
实时流传输/直播是一个复杂的过程,涉及多种不同的方法和格式。这些组件中之一是用于媒体文件编码和解码的编解码器。编解码器还定义了编解码器可用于执行流传输的工具的类型。
为了大大简化过程;为了使视频通过互联网传输,它必须首先使用麦克风和摄像头捕获音频和视频。然后,必须将原始数据压缩(编码)为编解码器,通过互联网连接(使用传输协议)进行广播,发送到某种服务器端解决方案(通常是CDN或Red5 Pro之类的基于云的群集),以及 随后解压缩(解码)以供订阅用户最终观看视频。
当前有几种不同的编解码器正在使用,包括VP8/9,AVC(H.264),HEVC(H.265)和AV1。本篇文章将特别关注为什么AVC(H.264)是比建立HEVC(H.265)流媒体服务器解决方案更有效的低延迟流媒体直播选择。
AVC与HEVC有何区别?
HEVC(高效视频编码),也称为H.265,是视频压缩的最新国际标准。它是AVC(H.264)的后继产品,前身是MPEG-4。HEVC标准由ISO/IEC MPEG(运动图像专家组)和ITU-T VCEG(视频编码专家组)开发,于2013年首次发布。
从逻辑上讲,人们可能会认为,由于HEVC是最新开发的编解码器,因此它将是最有效的。然而,现实却更为复杂。HEVC确实提供了压缩效率方面的优势,但HEVC文件占用的存储空间相当于是ACV文件的一半。较小的文件大小意味着它需要较少的存储空间,更重要的是,对应于流式传输时较少的带宽消耗。这种先进的压缩效率归因于HEVC如何处理宏块。HEVC还具有更好的可变块大小分割,改进的块分割和运动补偿滤波器,样本自适应偏移滤波以及更好的运动矢量预测和精度的功能。 x265小组的本页说明对这些术语以及如何提高HEVC的效率进行了很好的阐述与解释。
具有所有的这些优点,为什么HEVC并不是更好的实时流编解码器?
1)更高的编码速度
这其中一个很大的原因是延迟。尽管HEVC最终会产生较小的视频,并且由于要发送的数据较少,因而可以更快地发送视频,但是所有这些额外的压缩(与AVC相比)存在意味着执行实际压缩将需要更长的时间。因此,它将使发送视频的时间更长。发送可能不需要太多的带宽,但需要花费更多时间进行实际压缩,所用时间将最终超过了视频流传输中节省的时间。
尽管这对我们流媒体行业的从业员来说似乎确实很明显,但是也值得解释为什么如此重要。延迟很重要,因为广播公司和订户之间的任何形式的延迟都会使交互式实时流媒体体验变得极差。任何类型的实时流应用程序都需要低等待时间才能拥有自然流。体育赛事和赛事广播需要防止剧透或实时引起人群反应,直播拍卖需要确保在正确的时间登记出价和社交平台需要确保前后对话的畅通。
由于HEVC具有更多的开销,因此与编码H.264相比可能导致延迟。
2)限制采用
为了使用编解码器,需要支持的硬件或软件编码器。 HEVC的采用率很低,这在很大程度上要归因于专利许可。虽然AVC只有1个,但HEVC具有四个相关的专利池:HEVC Advance,MPEG LA,Velos Media和Technicolor。这使其变得更昂贵,从而阻碍了其被更广泛的采用。因此需要将其限制在特定的硬件编码器和移动芯片组中。此外,在2013年,思科将其H.264实施开源,并将其作为免费二进制下载发布。这极大地推动了AVC的广泛应用。
尽管有可用的HEVC软件编码器,但是使用软件编码器会导致性能问题,因为它将消耗更多的CPU。实时流媒体已经是一个占用大量CPU的过程,因此增加本身已经很高的使用率将是成为一个问题。因此,随着等待时间潜在地增加,电池寿命将减少。
3)浏览器不支持
与AVC相反,大多数Internet浏览器不支持HEVC。仅Edge,Internet Explorer和Safari支持HEVC。即使这样,运行浏览器的设备仍将需要支持HEVC硬件编码。即使通过正确的实现在浏览器中支持HEVC,WebRTC仍无法正常工作。
随着移动设备和便携式计算机广泛用于Internet浏览,无法在Internet浏览器中观看视频严重地限制了用户访问内容的方式。支持各种设备是确保各种用户可以观看他们喜欢的内容的唯一方法。
4)降低带宽对于高分辨率更重要
更高的压缩率和更小的文件大小的部分优势在于,它占用的带宽更少,这意味着用户仍可以以较低的互联网速度流式传输高质量的视频。但现实情况是,固定宽带连接的全球平均上传速度为42.63 Mbps,大多数地方的互联网速度都足以支持AVC上的4K流传输。移动设备的平均速度要低得多,为10.93 Mbps。即使如此,对于1080p而言,速度还远远不够。
Boxcast的这张图显示,全球范围内的平均连接速度绝对能够满足所有分辨率级别的上传速度要求。
对于互联网速度较慢的国家/地区的用户,自适应比特率支持可以调整比特率以提供最佳体验,而转码可以根据可用带宽将广播分为多种质量以获得最佳体验。在流式传输到具有2或3G连接的移动设备时,手掌大小的设备甚至不需要1080p分辨率即可看起来不错。720P甚至480P仍将以高质量显示。
但是,必须承认,较小的文件将为公司节省带宽成本。较小的文件意味着无需为CDN或云网络上的更多数据流支付高昂的费用。当然, 虽然这不错,但只有在真正高分辨率的情况下(例如4K),数据消耗减半才有很大的不同。
当然,无论规模如何,省钱无疑都是重要的事情。这将我们带入下一两全其美的阶段:具有相同性能的更好压缩。
5)LCEVC绕开了整个争论
LCEVC(低复杂度增强视频编码)添加了一个额外的处理层,以利用MPEG或VP9和AV1等其他现有和将来版本的压缩版本将压缩率提高40%。正如我们在上一篇文章中介绍的那样,LCEVC是一项前途广阔的技术,因为它实质上使当前已经以一种或另一种其他形式被采用的协议本身变成了更有效的协议。
从现在的情况看,内容提供商似乎将能够使用支持LCEVC的基于软件或硬件的编码器以及Red5 Pro跨云平台,从而通过新一代的处理密集型设备促进实时流传输视频格式。取决于所使用的核心编解码器,这不仅适用于4K,最终也适用于8K UHD,还适用于为360度观看,虚拟现实和其他创新而设计的格式。
那是因为实际上任何设备都可以支持嵌入在服务提供商的应用程序播放器中或单独下载到查看器设备的瘦LCEVC客户端。此外,LCEVC通过随附的HTML5 JavaScript实现支持免费的浏览器插件功能。这意味着广泛的实施应该相当简单。
尽管如此,AV1有望取代H.264和H.265。是因为它背后的财团拥有所有主要参与者的资格,而且免版税。现在使AV1退回的所有原因是缺少实时编码器。一旦广泛可用,AV1(尤其是与LCEVC配对时)将是未来前进的道路。
底线:H.264 / AVC效果更好
尽管HEVC确实在AVC方面进行了改进,但是这些改进不足以克服缺点。由于较长的编码时间导致更高的延迟,因此专利许可会限制采用,缺乏浏览器支持以及大多数实时流的真实观看分辨率,HEVC并不符合预期。总体而言,AVC流服务器比HEVC流服务器要有效得多。更重要的是,LCEVC准备回避整个编解码器问题,从而使所有问题都变为无效。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。