传输黑科技下的全景之旅—浅谈开源项目 E3PO 的思路与功能
https://github.com/bytedance/E3PO
近些年来,不管是学术界还是工业界,360 视频传输吸引了人们越来越多的注意力。随着 Meta、PICO 等知名品牌头显销量激增,以及苹果公司推出其首款空间计算设备,360 视频及其应用的前景正在迅速扩大。与传统 2D 视频相比,360 视频的特点是传输数据量更大、对于交互时延的要求更高。由于其整体系统的复杂性,目前还没有一个普遍认可的 360 视频传输方案。本文将以 360 视频的重要性、实现思路功能、体验功能展开讲解
理解 360 度视频流的重要性
360 度视频正迅速变成新一代影音内容的首选形式。作为一种全新体验型媒介,360 度视频能够为用户提供超现实的视觉效果,让他们真切地置身于视频场景之中。然而,与二维普通视频不同,360 度视频极高的视觉质量要求给流量传输带来了很大挑战。如何在有限的带宽条件下,将如此大规模的视频数据实时推送给用户,成为业内越来越受重视的一个问题。
E3PO 项目的思路和功能
E3PO 是一个用于 360° 视频流模拟和评估的开放平台。E3PO 旨在支持迄今为止提出的各种 360° 视频流方法的模拟,包括基于投影、基于图块或基于转码。特别是,E3PO 允许用户将 360° 视频转换为标准或自定义投影、将视频分割为相等或自适应大小、实施自定义运动预测算法、应用不同的流媒体策略以及使用任何用户特定的指标进行评估。最重要的是,E3PO 会生成每次模拟的实际视觉序列,这些序列将显示在用户屏幕上。
因此,E3PO 提供了一个完美的解决方案,可以使用相同的视频内容和相同的运动轨迹客观地比较不同 360° 视频流方法的性能。
目前 E3PO 已经实现了多个典型方案作为示例,同时也允许用户自己开发传输算法来集成测试。以下是其架构图,为了模拟流媒体方法,视频预处理器首先根据用户的特定投影和平铺参数将 360° 全景视频分割成小视频平铺块。然后,流模拟器读取提供的头部运动轨迹,并模拟详细的流动作,包括何时以及哪个视频块被传输。最后,系统评估器合成用户屏幕上显示的视频序列并计算各种指标。
亲身体验 E3PO 项目
后续我对 E3PO 项目进行了实践, 个人总结如下体会:
项目结构清晰,文档描述详细。根据快速入门文档,我只需几步就能完成示例方案的编译和运行。
预处理模块支持各种投影格式编码,定制分片策略也比较灵活。这为后续比较不同编码方案设计提供了充分选择空间。
模拟决策和评估过程都比较真实,能很好还原用户真实流畅率等体验。这对算法调优和优化很有帮助。
自开发传输算法也比较简单,只需按接口实现几个函数即可。这让 E3PO 足够开放可扩展。
可视化效果清晰,对比分析直观。这有利于快速评判不同方案的优劣。
项目积极引入新算法,不断优化代码和文档,这表明项目还在不断成长完善。
E3PO 实现了从视频编码到决策模拟再到评估的全流程开源平台,为 360 视频传输研究提供了一个公平高效的环境。它已经具备比较成熟的功能,并在不断发展完善中,相信将带来更多惊喜。对我这样的学习者来说,E3PO 是一个开阔视野的好平台。整体项目还在持续开发,感兴趣的小伙伴可以进入贡献!!!
版权声明: 本文为 InfoQ 作者【计算机魔术师】的原创文章。
原文链接:【http://xie.infoq.cn/article/8300c9ef03ebcd918a91581c6】。文章转载请联系作者。
评论