0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用NVIDIA CloudXR SD提供一键式VR流媒体

星星科技指导员 来源:NVIDIA 作者:NVIDIA 2022-04-07 09:29 次阅读

考虑到当今流媒体技术的流行程度,人们很容易忘记,按需、全球可用的应用程序曾经被认为是一个激进的想法。但随着 AR 和 VR 的普及,将流媒体推得更远的竞争还在继续。随着对真实内容和消费级硬件的需求,一个关键的挑战随之而来:如何在不影响沉浸式体验的质量和性能要求的情况下,构建在任何设备上都看起来不错的应用程序?

为了帮助解决这个问题, Innoactive 的团队已经将 NVIDIA CloudXR 流媒体解决方案集成到他们的 VR 应用程序部署平台 Innoactive Portal 中。 SAP 、德勤、林德工程( Linde Engineering )和大众汽车( Volkswagen Group )等客户正在使用该平台,随时随地为用户提供无缝的沉浸式培训。

Portal 是一个以用户为中心的企业级部署平台,用于管理和访问 VR 内容,只需从任何设备上单击一下即可。门户的独特之处在于能够跨平台和设备部署内容,包括 PC VR 、独立 VR 和 PC 3D 应用程序。

使用NVIDIA CloudXR SDK 的服务器和客户端组件,在云计算框架的改进下,门户可以为 PC VR 和流媒体应用程序构建一对一耳机或其他低计算设备。最终用户所做的就是从他们的库中选择应用程序来流式处理它。

克服 XR 的分销瓶颈

poYBAGJOPoGAd-2bAAMIZuF9sa4456.png

图 1 Innoactive Portal 一键式用户界面,用于启动虚拟现实 。

虽然还有其他几种企业虚拟现实平台,但门户网站通过缓解 XR 内容分发过程中最关键的三个瓶颈,让创作者和最终用户都能轻松完成这一过程:

该平台的 安全云基础设施 为客户提供了对其内容和用户的集中控制,确保只有需要的人才能访问。

one-click streaming 体系结构让不熟悉虚拟现实导航的用户可以轻松使用内容。

NVIDIA CloudXR 支持更复杂的分布模型,如门户,导致几个[VZX333 ],像一次构建应用程序的能力,并将其部署到任何设备,任何地方。

一段时间以来,使用 NVIDIA CloudXR 来流式处理 VR 应用程序在技术上是可行的,但 Innoactive 希望为临时甚至首次使用 VR 的用户提供此功能。为了实现这一目标,他们面临着一系列挑战:

当用户想要开始云计算虚拟现实体验时,他们需要一台合适的 NVIDIA GPU 驱动的机器,可供他们按需使用。

这台运行 NVIDIA CloudXR 的服务器不仅需要良好的性能才能执行渲染,还必须对全球用户可用。

同时,尽可能了解资源也很重要。为了接触到广泛的受众,所有这些都必须以最小的复杂性为用户实现。

为了提供这种零摩擦体验,需要在NVIDIA CloudXR SDK 的客户端和服务器端构建上 NYNODICAL 。

为 NVIDIA CloudXR 构建可扩展的服务器体系结构

在服务器上,无论有多少用户试图访问机器,或者这些用户需要访问的位置或时间,都必须确保每个用户都可以按需使用由 NVIDIA GPU 驱动的机器。

依赖云服务提供商,比如 Amazon 网络服务( AWS ) Microsoft Azure 对于计算资源来说是一个逻辑解决方案。然而,门户网站的建设指导原则是作为一个开放平台,支持所有类型的虚拟现实内容以及要部署的所有类型的环境。

云提供商的这种不可知论意味着需要一种服务,能够在任何一种云服务上支持云渲染机。反过来,这为已经预先决定使用其中一种的客户提供了最大的灵活性。它还使 Portal 能够独立于相应的提供商,切换到另一个延迟或性能更好的数据中心,从而为最终用户提供最大的覆盖范围和性能。

因此, Innoactive 依赖于为任何云提供商构建带有预装软件组件的定制虚拟机( VM )映像。它们使用一个名为 Packer 的工具,并允许使用相应云提供商的虚拟机规模集功能对生成的虚拟机进行规模调整。

Innoactive 为今天而建,为明天而规划,确保这一过程可以在未来复制,并适应与新云提供商的合作。服务现在能够在任何需要的时候和任何地方动态分配渲染资源。

pYYBAGJOPoKAR_wwAAHnSUf8MW4588.png

图 2 为云不可知的 NVIDIA CloudXR 服务器定制 VM 映像构建管道

在使用云渲染 VR 进行生产时,远程渲染资源的成本必须尽可能低,以提供积极的商业案例。与此同时,确保良好的用户体验需要高水平的性能,而这反过来又可能很快变得昂贵。因此,门户团队的任务是找到最佳的成本和性能权衡。

除了虚拟机的规模之外,一个巨大的成本驱动因素是它的正常运行时间。目标是支付所需的费用,而不是更多。然而,等待太长时间启动机器可能会让启动过程感觉笨拙或不及时。

由于门户的按需设计,减少用户等待时间是让他们尽快进入云渲染体验的关键。门户会检测用户何时开始使用它,并准备虚拟机,以期待他们启动虚拟现实应用程序。这大大缩短了他们启动应用程序时的加载时间,从几分钟缩短到几秒钟。

云渲染会话完成后,门户网站的云渲染编排服务会使用相应云提供商的端点自动删除机器以进行缩放。这再次确保只支付正常运行时间,而不是死机时间。门户可以根据用例调整其呈现功能。例如,它可以确保 GPU 渲染池在计划在公司进行虚拟现实培训的日子里足够大,同时在低活动时最小化渲染池的大小。

要优化性价比,您应该了解客户和地区差异。在会话过程中保持最小的延迟是保证良好体验的最重要因素之一。通常,服务器离最终用户越近,用户输入和流式应用程序之间的延迟和延迟就越低。

为了确保用户被分配到最近的服务器,使用了多种算法,其中一个例子是 IP 查找,以缩小用户的地理位置。未来,依靠 5G 网络和边缘计算将进一步提高性能。

poYBAGJOPoKAJVVnAAB1lR79wqg676.png

图 3 。门户云渲染体系结构 。

通过前面提到的体系结构和优化, Portal 支持有意使用 NVIDIA CloudXR 远程呈现 VR 应用程序的用户。门户负责在云中分配渲染资源,将期望的 VR 内容同步到远程机器,并执行NVIDIA CloudXR 服务器,以便用户可以连接。用户只需选择所需的 VR 内容。

虽然它本身提供了价值,但拥有一台预配置的、随时可以滚动的远程渲染机只是等式的一半。它仍然要求用户启动他们的流媒体客户端,并通过输入服务器 IP 地址手动配置它,这对新手来说并不舒服。

将 NVIDIA CloudXR 客户端构建到门户

通过在客户端应用程序中集成NVIDIA CloudXR SDK ,门户取消了这些手动步骤以提供平滑的用户体验。为了让用户在整个流程的每一步都能得到更新,门户网站使用了建立在 ASP 。网芯信号机 之上的 WebSocket 。客户端应用程序的用户界面也是使用 Unity 构建的,以便在提供良好用户体验的同时实现快速迭代。

这是伴随着NVIDIA CloudXR SDK 的组合,它是用 C ++ NDK 编写的,以及一个交互式的统一场景进入一个门户客户端应用程序的挑战。其结果是一个单一的、模块化的 Android 应用程序,具有多种活动,可以轻松加载到独立的虚拟现实耳机上,如 Meta Quest 2 、 Vive Focus 3 或 Pico Neo 3 。

当远程渲染服务器可用时,用户界面将指导用户。然后它通过NVIDIA CloudXR 客户端自动连接到它,并确保 VR 应用程序在服务器上正确启动,保证无摩擦地进入流式体验。

业务逻辑层用原生 Android ( Java )编写,包含与 Innoactive 后端服务来回通信的逻辑,并处理整个应用程序状态。它使用 Unity 附带的名为 UnitySendMessage 的专有协议更新用户界面层,并在需要时初始化本机 NVIDIA CloudXR 客户端库。

本机 NVIDIA CloudXR 活动被扩展为使用 Java 本机接口( JNI )将生命周期事件传回业务层。本文后面的示例代码显示了这一点。为了正确地将 native Unity 和 NVIDIA CloudXR 活动彼此隔离开来,这两种活动都设计为在专用的 Android process 中运行。

pYYBAGJOPoWAXJjrAAKkoRuMb9I561.png

图 4 。NVIDIA CloudXR 客户端应用层体系结构。

下面的代码示例显示了 Android 代码与 NVIDIA CloudXR 之间的接口。首先, Android 代码示例( Java ):

import android.app.Activity; public class MainActivity extends Activity implements ServerAvailableInterface { // load native NVIDIA CloudXR client library (*.aar) static { System.loadLibrary("CloudXRClient"); } static native void initCloudXR(String jcmdline); @Override public void onServerReady(String serverIpAddress) { // initializes the native CloudXR client after server ip is known String arguments = String.format("-s %s", serverIpAddress); initCloudXR(arguments); } public void onConnected() { // called by native CloudXR activity when it is successfully connected System.out.println("Connected to CloudXR server") }

第二, Vidia CloudXR 代码示例( C ++):

  #include 
#include 
#include  // ... // called whenever the CloudXR client state changes
void Client::UpdateClientState(cxrClientState state, cxrStateReason reason) { switch (state) { // ... case cxrClientState_StreamingSessionInProgress: OnCloudXRConnected(); break; // ... }
} // Fired when the CloudXR client has established a connection to the server
void Client::OnCloudXRConnected() { jmethodID jOnConnected = env ->GetMethodID(mainActivity, "onConnected", "()V"); env->CallVoidMethod(mainActivity, jOnConnected);
} // ...

最终的客户端应用程序提供了一个直观的界面,其中包含了选择所需 VR 内容所需的最少用户交互。这个界面可以从独立于虚拟现实的第二个屏幕设备(通常是笔记本电脑手机)访问。

通过门户的实时通信,所有连接的客户端(无论设备如何)都会在加载云渲染会话时显示相同的状态更新。用户的内容在虚拟现实中准备好后,会收到推送通知。完成会话后,用户可以直接继续下一个流式会话,而无需退出客户端应用程序。

将门户网站的服务与扩展的 NVIDIA CloudXR 客户端捆绑在一起,为用户提供了一个全球可扩展的解决方案,用户只需单击一下即可从任何设备访问其 VR 内容库。 NVIDIA CloudXR 的门户网站改变了客户部署基于 PC 的虚拟现实的方式。在每个耳机类型的客户只有一个平台的情况下, Portal 现在可以处理复杂的问题。

易于使用的一键式前端支持他们扩展基于虚拟现实的用例,比如培训经常是虚拟现实新手的员工。在技术层面上,客户可以灵活规划耳机的部署。由于提供高质量体验所需的强大计算能力,它们不再局限于基于 PC 的虚拟现实。

现在,云机器的强大功能使得通过 NVIDIA CloudXR 门户在独立设备上提供高端渲染。

关于作者

William Cannady 是 NVIDIA enterprise XR 团队的技术产品经理。他专注于 XR 产品的技术方面,与合作伙伴和客户密切合作。

Benedikt Reiser 是 Innoactive 的首席技术官。他专注于将虚拟现实和 AR 等沉浸式技术引入企业,通过设计和交付解决方案,为最终用户提供令人惊叹的体验,同时平稳、安全地处理底层的复杂性。

Gustavo Quiroz 是 Innoactive 的高级软件工程师。他热衷于 XR 、电子游戏和互动技术。他最近的一个项目是将 NVIDIA CloudXR 集成到企业平台中,用于虚拟现实部署。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Android
    +关注

    关注

    12

    文章

    3939

    浏览量

    127593
  • 接口
    +关注

    关注

    33

    文章

    8650

    浏览量

    151427
  • NVIDIA
    +关注

    关注

    14

    文章

    5025

    浏览量

    103270
收藏 人收藏

    评论

    相关推荐

    人机界面在开关柜一键顺控中起到什么作用?

    人机界面在一键顺控系统中发挥着操作指令输入、状态显示与反馈、参数设置与配置以及提升操作便利性和安全性等重要作用。它是实现一键顺控功能不可或缺的关键组成部分。蜀瑞创新专注智能开关柜一键顺控
    的头像 发表于 11-05 10:02 171次阅读
    人机界面在开关柜<b class='flag-5'>一键</b>顺控中起到什么作用?

    10KV开关柜一键顺控和110KV变电站一键顺控哪些地方不同

    蜀瑞创新为大家科普:10KV开关柜一键顺控和110KV变电站一键顺控在多个方面存在不同,这些差异主要体现在应用范围、功能侧重、控制对象以及系统复杂性等方面。
    的头像 发表于 10-16 10:29 332次阅读
    10KV开关柜<b class='flag-5'>一键</b>顺控和110KV变电站<b class='flag-5'>一键</b>顺控哪些地方不同

    LoRa无线一键报警安防建设系统

    SOS紧急呼叫按钮具有紧急情况下一键报警的功能,可与报警主机配合使用,支持标准LoRaWAN协议。 lora紧急按钮具有紧急情况下一键报警功能,可与报警主机配合使用,支持标准LoRaWAN协议。如遇
    发表于 09-25 17:08

    一键断电开关的种类有哪些

    一键断电开关的种类主要可以从其功能和实现方式上进行分类。以下是些常见的一键断电开关种类: 1. 继电器一键断电开关 定义 :这种开关通过
    的头像 发表于 09-13 16:45 1180次阅读

    一键断电开关的控制原理是什么

    一键断电开关,也被称为紧急断电开关或紧急停止开关,是种安全装置,用于在紧急情况下迅速切断电源,以防止事故的发生或扩大。这种开关的设计和应用在工业、实验室、医疗设备以及任何需要快速断电的场合都
    的头像 发表于 09-13 16:28 1316次阅读

    ElfBoard技术贴|如何在ELF 1开发板上搭建流媒体服务器

    流媒体服务器是种专门用于传输实时数据流的服务器软件,广泛用于视频直播、视频会议、音频播放等应用场景。在嵌入开发领域,将流媒体服务器部署到开发板上可以实现诸如视频监控、实时数据传输等
    的头像 发表于 08-20 14:48 597次阅读
    ElfBoard技术贴|如何在ELF 1开发板上搭建<b class='flag-5'>流媒体</b>服务器

    变电站一键顺控系统和开关柜一键顺控有区别吗?

    变电站一键顺控系统和开关柜一键顺控技术虽然都涉及到“一键顺控”的概念,但它们在应用范围和具体实现上有所不同,因此变电站一键顺控系统和开关柜一键
    的头像 发表于 07-31 13:34 612次阅读
    变电站<b class='flag-5'>一键</b>顺控系统和开关柜<b class='flag-5'>一键</b>顺控有区别吗?

    开关柜一键顺控的技术难点和优势、发展趋势?

    开关柜一键顺控技术的核心在于将复杂的人工操作流程转化为自动化、智能化的控制流程,蜀瑞开关柜一键顺控系统多年技术经验
    的头像 发表于 07-23 11:41 461次阅读

    智能开关柜能如何实现“可视化一键顺控”?

    智能开关柜能如何实现“可视化一键顺控”和“开关柜健康状态管理”?蜀瑞创新推出智能开关柜一键顺控测解决方案。建设主要包括柜内无线温度监测、断路器机械特性和电气特性监测、分合闸线圈/储能电机监测、电动机构设备等,并能通过装置实现开关柜基于AI识别的
    的头像 发表于 07-08 09:45 525次阅读
    智能开关柜能如何实现“可视化<b class='flag-5'>一键</b>顺控”?

    NVIDIA Holoscan for Media提供种全新的直播媒体开发方法

    无论是提供体育直播节目、流媒体服务、网络广播还是社交平台内容,媒体公司都面临着颇具挑战的形势。
    的头像 发表于 04-11 14:01 375次阅读

    智慧杆一键报警连入网关后无法对讲是什么原因?

    一键对讲报警盒是智慧路灯杆上常见的挂载外设之,能够为公共安全提供即时支持,增强城市管理的智能化和应急反应能力。本篇就为大家简单介绍下在
    的头像 发表于 03-28 17:25 415次阅读
    智慧杆<b class='flag-5'>一键</b>报警连入网关后无法对讲是什么原因?

    一键影像测量仪1125-C02

    优可测一键影像测量仪FM系列:随意摆放被测对象、一键即可测量300个尺寸,可100个产品同时摆放;超清成像、灯光丰富、分割至0.005亚像素处理、纳米级别测量平台。
    发表于 03-05 14:05 0次下载

    音视频解码生成与流媒体传输的结合

    音视频解码生成与流媒体传输是现代数字媒体技术中两个不可或缺的部分,它们的结合为用户提供了高质量、实时性的多媒体体验。 1. 解码生成与流媒体
    的头像 发表于 02-21 14:36 414次阅读

    一键掌控多媒体:中央控制系统的便利性

    随着科技的进步,多媒体设备在各个领域中的应用越来越广泛。而中央控制系统作为其核心组成部分,为用户提供一键掌控多媒体的便利性。本文将详细探讨中央控制系统的便利性,帮助您更好地了解其在实
    的头像 发表于 01-23 14:53 439次阅读

    高效管理,一键操作:中央控制系统让多媒体更简单

    如何通过高效管理和一键操作,让多媒体更加简单。 来百度APP畅享高清图片 、集中管理,统控制 中央控制系统通过集中管理的方式,将各种多媒体
    的头像 发表于 01-23 14:40 416次阅读