不管你是在观赏一部YouTube视频、流式视频或是玩游戏与缓冲有关的同步信号可能会造成一些严重的问题。
没有什么能比一个看似一直转下去的缓冲圈更让人出戏了,如果你是曾在你最喜爱的电视节目或游戏中某个重要时刻受缓冲困扰的受害者,放心,并不只有你这样。每天有超过500万小时的视频通过流式传输,意味着流式服务的用户很有可能遇到大量的缓冲。
缓冲厌恶者应该会很欣喜地听到到MIT研究者已经提出了一种解决缓慢加载时间的一劳永逸的方法,MIT研究者们开发出了一套独特的人工智能系统,能够优化视频的流式传输并提高可靠性。
为了理解它是怎样工作的,你首先得理解缓冲是什么及为什么会发生缓冲。
烦恼背后的技术
网络通道或数据是通过被称作packets的单元发送的,也称chunks。
关于视频,流式传输与加载的数据被称为segments。
每时每刻,整个文件的一系列部分片段会发送过来,然后拼接到一起——这就是为什么你能够无间断或很少间断地观赏视频,不过它很快就会出问题。当你播放视频的时候,在后台播放的内容同时也在进行下载。
在这一过程中,如果你的连接断线或者变差,这些chunks就停止流入了,结果就是整个文件或视频性能的下降。
如你所见,其中的思想就是在后台持续下载这些片段再把它们拼接到一块,但是如果这一过程被任何因素中断了,你就会碰到缓冲与那可怕的转圈。
问题的严重程度取决于无线信号的强度、网络连接或者附近的网络状况。比如说在拥挤的公共网络上看视频可能会造成明显的缓冲与性能问题。
像YouTube、Vimeo,还有很多社交媒体平台这样的服务都使用了叫做Adaptive Bitrate或ABR的算法,它最开始会测试连接速度、可用总带宽,决定传输内容或流式视频的解析度。
更高的解析度显然需要更多的资源,所以有时你可以通过降低内容质量或分辨率来避免缓冲——这也是Netflix视频有时看起来比平时模糊或糟糕的原因,服务或应用会调整内容的分辨率以适应更高的连接需求。
那么AI怎么解决这个问题?
MIT的方法
MIT Computer Science and Artificial Intelligence Lab (CSAIL)的团队依靠一种自动智能系统在合适的算法之间进行切换,神经网络——当然是数字的——能够分析数据并决定连接什么时候需要一个比目前更合适的算法。
团队通过一个基于奖惩的机制训练了这个AI系统。
在这项课题的一个月时间中,他们在播放流式视频时应用了这套系统,如果系统判定失误则给予惩罚,成功则给予奖励。
这最终使得AI系统能够计算出哪一种算法与何种场景最适配,并且什么时候在算法之间切换。
他们甚至保证系统能够根据服务、连接以及请求的媒体类型来做出调整。
像Netflix这样的内容提供商可以选择质量优先或性能优先,这套系统会将用户选择考虑进去,定期监测并自动做出反应。
参与这个项目的MIT教授Mohammad Alizadeh表示系统是可完全定制的,这套解决方案允许用户“在权衡缓冲VS分辨率的优先级之间”个性化“他们自己的流式体验”。
这套系统在媒体传输其他领域的作用也是很让人激动的,比如说能够在VR上带来更高解析度与代入式的游戏体验。
不过终结缓冲的想法还是蛮酷的,在以后,所有的流式用户都能跟那该死的旋转圆圈说拜拜了。