算法系列:视频播放器性能


算法系列:视频播放器性能

文章插图
 
 
您已经完成了对相当棘手的内容的编码,其中一些内容比正常情况下涉及的质量控制要多一些,并且可以将其发布以供外部使用 。但是首先您需要将其显示给管理层,因此您需要将流上传到预发布的登台服务器,并向老板发送URL文本 。几分钟后,您会收到一条短信,询问为什么视频质量如此差 。
老板对视频 看起来不好表示什么,以及如何解决该问题?是否存在特定场景的问题,媒体服务器中的故障,老板用来观看视频的移动设备上过时的播放器甚至公司VPN上的带宽是否有问题?
欢迎来到我们称为流媒体的错综复杂的世界 。
在算法系列的上一篇文章中,我们研究了CDN背后的数学原理 。好处是CDN可以准确地提供它们所得到的,并且通常会做得很好 。但是有时,获取方(例如,对点播内容进行编码)会引入一个异常,该异常会通过CDN到达最终用户,从而导致回放质量不合格 。
在我刚才提到的场景中,编码,传输和回放的算法在最终用户的播放器应用程序中如何相交?这就是我们在本文中有关球员表现的内容 。
编码和传送“编码一次,到处交付”是我们在 流媒体历史上一直听到的口号,这是我们取得不同成功水平的目标 。在早期,这意味着使用正确的编解码器和播放器组合,因为编码器,媒体服务器和最终用户播放器都是同一生态系统的一部分,例如Adobe,Microsoft或Real提供的付费解决方案 。
问题是“无处不在”仅意味着其中一种专有解决方案的围墙花园 。如果一家公司使用Microsoft,但其客户使用Real,则每个流平台必须对内容进行一次编码 。
H.264(又称高级视频 编码,AVC)的出现使编码方面的情况变得更好了,H.264 通常以 MPEG-2或MPEG-4容器格式存储 。但是随后,出现了各种不同的基于HTTP的交付方式,例如平滑流,Adobe HDS或Apple HTTP Live Streaming(HLS),它们至少需要以选定的比特率(称为自适应比特率或ABR)进行多种编码)或多个细分步骤,以每个专有的HTTP细分大小和清单文件进行交付 。
幸运的是,这些问题中的大多数已通过一些专有格式解决,这些专有格式构成了行业标准 MPEG-DASH方法的基础 。同时,我们已经 看到Apple的HLS转向了DASH使用的分段MP4(fMP4)方法 。
因此,在编码ABR内容时无需担心,因为所有内容都将在任何给定时间基于适当的带宽传送,对吗?是的,没有 。将ABR内容传送到支持ABR的播放器时,需要考虑以下三件事 。
有多少带宽可用?这是ABR播放器性能正常的主要问题之一 。这不仅是在任何特定时刻的问题,而且还是在特定时刻之前的问题,请记住(正如大多数股票经纪人在向潜在客户的推销中所提到的那样),过去的表现并不能保证未来的结果 。 这是关键的原因是,当涉及到清单或MPD文件中接下来要请求哪个比特率合适的ABR段时,很多研究都假定播放器具有最佳决策 。
在PV '18上,Brightcove的Yuriy Reznik和其他同事在第23包视频研讨会上发表了题为“ ABR流的编码配置文件的最佳设计 ”的论文 。虽然它描述了建模网络带宽的方法以及选择给定ABR流的可能性(稍后将对此进行更多介绍),但是值得考虑两种不同的算法方法来解决调度问题 。
第一个方法涉及引入平滑滤波器以估计带宽,如“ 自适应HTTP流的调度和速率自适应算法的设计”中所述”,这是 斯蒂芬·黑塞(Stephan Hesse)在Fraunhofer / HHI工作时写的,并且部分由欧盟框架计划7(FP7)开放内容感知网络(OCEAN)项目资助(见图1) 。Reznik及其合著者在他们的论文中引用了它作为一种实用方式的示例,其中“ ABR流客户端估算可用带宽……然后决定接下来要提取的编码流”以尽可能多地利用可用带宽 。
算法系列:视频播放器性能

文章插图
 


    推荐阅读