实时云渲染云推流突破UE像素流传输数据单个消息64KB限制

UE的像素流送Pixel Streaming通过WebRTC协议将渲染后的画面(像素数据)实时编码为视频流,传输到客户端(如浏览器)。客户端仅接收视频流并显示,所有计算和渲染都在服务器端完成。传输的是压缩后的视频流(H.264/H.265编码)。客户端的输入(如鼠标、键盘)通过WebRTC回传到服务器,服务器处理后再更新画面。

像素流的技术架构图如下。

需要将项目作为打包应用程序运行时、或使用 Standalone Game 选项在虚幻引擎中启动时才能使用像素流送插件。总流程至少包括如下四步:

浏览器对WebRTC传输数据的限制

不同浏览器对WebRTC数据传输字节长度的限制存在一定差异。在大多数情况下,单个 DataChannel 消息的最大长度通常限制在64KB左右,但不同浏览器的具体表现有所不同。

Chrome浏览器在早期版本中,单个消息的最大长度为64KB,Firefox浏览器在WebRTC数据传输时,也大致遵循类似的限制,但在某些特殊配置或版本迭代中,其限制可能会有所变化。

WebRTC数据传输字节长度限制对UE开发的三维场景与二维业务系统的通信,会产生影响。

对应用场景的限制

字节长度限制会限制一些需要大流量数据传输的应用场景的使用。像应用内需要截屏操作,由于截屏后转成base64之后数据量较大,可能无法在WebRTC的字节长度限制下一次性传输。

对开发难度的影响

为了应对字节长度限制,开发者需要编写复杂的代码来实现数据的分割、传输和重组。这增加了开发的难度和工作量,同时也增加了代码出错的概率。开发者需要编写专门的算法来确保数据分割的合理性和重组的准确性。

像素流默认WebRTC协议会导致UE三维应用与前端网页的数据通信受限,导致推流效果不佳。加上UE5.5版本后像素流插件从默认版本升级到2.0版本,带来一系列迁移改造的调整,会对已交付项目和时间跨度比较大的三维可视化场景造成影响。

实时云渲染打破像素流数据传输限制

在数字孪生可视化场景中,UE开发的高精度大场景程序,通常需要与前端网页通信实现数据的传递,并且经过Web化后,更需要与已有业务系统进行对接。像素流提供了Web化的一种技术实现方式,但是在实际项目交付过程中,存在数据通信不畅、与系统对接和二次开发能力有限等诸多限制。商业化实时云渲染产品,将行业通用需求封装成功能组件,供开发者调用。

数据通道功能组件是用来实现客户端与应用之间的双向通信的,在数字孪生、展览展示、元宇宙等场景中应用非常广泛。图示为绿色双向箭头,代表在我们云端与客户端之间的虚拟通道,为三维应用建立快速通道。在这里,我们云端处理高帧率、高清晰度的三维应用,客户端处理业务流程及其他渲染。

自LarkXR3.3.3.5版本开始引入分包发送机制,并与PaaS平台深度集成,优化了数据传输效率,真正做到UE三维应用与二维页面之间发送消息长度不设限,突破WebRTC默认的64KB限制。

本文已首发于官网:www.pingxingyun.com/

相关推荐
秃头菜狗9 小时前
二、更新源(阿里云)(更新成阿里云后,再执行上面的系统更新)
阿里云·云计算
数据与人工智能律师10 小时前
从比特币到Web3:数字资产犯罪的演进史
大数据·人工智能·python·云计算·区块链
songroom13 小时前
dbpystream webapi: 从阿里云福州站点到上海站点的迁移之旅
阿里云·云计算
AKAMAI20 小时前
部署Linode Kubernetes引擎企业版的三种方式
人工智能·云原生·云计算
算家计算1 天前
算力颠覆未来工资定价逻辑!耶鲁大学论文预测AGI经济趋势,人类价值何处安放?
人工智能·云计算·资讯
wanhengidc1 天前
云手机比真机运行游戏的优势有哪些
网络·游戏·智能手机·架构·云计算
荣光波比1 天前
ELK企业级日志分析系统详解:从入门到部署实践
运维·elk·云计算
joey小天使1 天前
阿里云上CentOS6.9(停止维护)导致的yum下载chrony失败如何解决?
阿里云·云计算
小白考证进阶中1 天前
阿里云ACP云计算和大模型考哪个?
阿里云·云计算·阿里云acp·阿里云acp认证·阿里云acp考试·阿里云acp报名·阿里云acp证书