斯坦福大学研究小组发布了一项新的开源研究项目Puffer,该项目致力于通过人工智能改进互联网传输与视频流算法。点击【阅读原文】访问Puffer官网。
文 / Doyle
由计算机科学博士生Francis Ya领导的斯坦福大学研究小组推出了一个名为Puffer的新免费直播电视流媒体服务网站。
Puffer是斯坦福大学关于使用机器学习改进视频流算法的一项研究:YouTube,Netflix和Twitch等服务使用的算法类型。该研究的最终目标是发现新的算法,以减少停顿,提高图像质量,减少启动/通道切换,并改善自适应流。此前,麻省理工学院计算机科学与人工智能实验室(CSAIL)开发的 “Pensieve”系统,也曾尝试通过机器学习的方法提供更加流畅的流媒体传输体验。
Puffer使用Web Media Source Extensions(MSE)来传输视频。所有浏览器都不支持此标准,特别是iOS上的Safari不支持此标准(iOS上不允许使用其他浏览器引擎,这意味着无法在iPhone或iPad上观看Puffer)。Puffer适用于Chrome和Firefox(包括Android手机和平板电脑)和Microsoft Edge。不过由于资源限制,没有像Roku或Apple TV这样的流媒体播放器的应用程序。
Puffer专注于三种类型的算法:“拥塞控制”算法,决定何时发送每个数据,也称为数据包,“吞吐量预测器”,预测发送一定数量的数据需要多长时间在不久的将来通过互联网连接,以及决定要发送什么质量的视频的“自适应比特率”(ABR)算法,以便尝试为用户提供不会导致失速或缓冲的最佳图像质量。
Puffer使用在线学习来生成自适应比特率(ABR)和拥塞控制算法。从本质上讲,这意味着Puffer会定期从过去的表现中学习构建未来更好的算法。
此外,Puffe还以多种方式对视频流问题进行了不同的处理。这些包括:
Puffer使用结构相似性(SSIM)代替比特率作为体验质量测量的输入,确保性能测量与用户体验更直接相关。
Puffer使用比大多数现有系统更密集的比特率梯形图,允许对用户接收的视频质量进行更精细的控制。
使用websockets而不是“DASH”HTTP请求/响应对,允许连续流式视频与客户端请求不同步。
使用具有可调节调步速率的拥塞控制和直接访问吞吐量估计,而不是在TCP之上进行所有测试。
拥塞控制层和应用层之间的详细通信,使得可以通过拥塞控制层中可用的带宽来通知关于视频质量的应用层决策。
使用非传统信号来训练我们的传输时间预测器,例如ISP,连接类型等。
使用直接传输时间预测器(预测发送特定编码长度的块所需的时间)而不是简单地推断单一吞吐量估计。
作为实际数据的函数,每天重新训练传输时间预测器。
自动生成ABR方案的变体,并根据实际数据逐日演变。
使用跨不同用户的联合控制与分别处理每个流。
Puffer的所有研究工作都是开源的,可以在GitHub(https://github.com/StanfordSNR/puffer)上查看。
本文参考
Jason Gurwin,“EXCLUSIVE: Stanford Researchers Launch Free TV Service To Improve Video Streaming”
原文
https://thestreamable.com/guides/live-tv-streaming/news/exclusive-stanford-researchers-launch-free-streaming-service-to-improve-video-streaming-algorithms
精品文章推荐
技术干货: