Citrix Virtual Apps and Desktops

多媒体

HDX 技术堆栈支持通过两种互补的方法来交付多媒体应用程序:

  • 服务器端呈现多媒体交付
  • 客户端呈现多媒体重定向

此策略可确保您能够在将服务器可扩展性增加至最大以降低每个用户的成本时交付全部多媒体格式,并提供优异的用户体验。

使用服务器呈现的多媒体交付时,音频和视频内容将通过应用程序解码并在 Citrix Virtual Apps and Desktops 服务器上呈现。该内容随后被压缩并通过 ICA 协议交付到用户设备上的 Citrix Workspace 应用程序。此方法提供的与各种应用程序和媒体格式的兼容率最高。由于视频处理属于计算密集型操作,因此,服务器呈现的多媒体交付将大大受益于板载硬件加速。例如,对 DirectX 视频加速 (DXVA) 的支持将通过在单独的硬件中执行 H.264 解码来卸载 CPU 的负载。Intel Quick Sync、AMD RapidFire 和 NVIDIA NVENC 技术提供硬件加速的 H.264 编码。

由于大多数服务器不对视频压缩提供任何硬件加速,因此,如果所有视频处理都在服务器 CPU 上完成,服务器可扩展性将受到负面影响。可以通过将多种多媒体格式重定向到用户设备以进行本地呈现来保持高服务器可扩展性。

  • Windows Media 重定向针对许多种通常与 Windows Media Player 关联的媒体格式来卸载服务器的负载。
  • HTML5 视频变得非常盛行,Citrix 为这种类型的内容引入了重定向技术。我们建议使用 HTML5、HLS、DASH 或 WebRTC 对 Web 站点进行浏览器内容重定向。
  • 可以对多媒体内容应用常规访问重定向技术“主机到客户端重定向”和“本地应用程序访问”。

如果未配置重定向,同时使用这些技术时,HDX 将执行服务器端呈现。 如果配置了重定向,HDX 将使用服务器提取和客户端呈现,或者客户端提取和客户端呈现。如果这些方法失败,HDX 将根据需要回退到服务器端呈现,并且遵从“回退防护”策略。

示例场景

示例方案

场景 1。(服务器提取和服务器呈现):

  1. 服务器从其来源提取媒体文件,进行解码,然后将内容提供给音频设备或显示设备。
  2. 服务器分别从显示设备或音频设备提取提供的图像或声音。
  3. 服务器有选择地对其进行压缩,然后将其传输到客户端。

此方法的 CPU 成本和带宽成本都非常高(如果提取的图像/声音未有效压缩),并且服务器可用性非常低。

Thinwire 和音频虚拟通道采用此方法。此方法的优势是降低了客户端的硬件和软件要求。使用此方法时,解码在服务器上进行,并且适用于许多种设备和格式。

方案 2. (服务器提取和客户端呈现):

此方法依赖在解码之前截获媒体内容并将其提供给音频设备或显示设备的能力。压缩后的音频/视频内容改为发送到客户端,之后将在客户端上对其进行本地解码和呈现。此方法的优势是卸载到客户端设备,缩短了服务器上的 CPU 周期。

但是,此方法还额外引入了一些针对客户端的硬件和软件要求。客户端必须能够解码可能会接收到的每种格式。

方案 3. (客户端提取和客户端呈现):

此方法依赖在从其来源提取之前截获媒体内容 URL 的能力。URL 将被发送到客户端,并且媒体内容将在客户端本地提取、解码和呈现。此方法从概念上讲非常简单。其优势是缩短了服务器上的 CPU 周期并且节省了带宽,因为服务器仅发送控制命令。但是,媒体内容并非始终可由客户端访问。

框架和平台:

单会话操作系统(Windows、Mac OS X 和 Linux)提供允许更加快速地部署多媒体应用程序的多媒体框架。下表列出了部分较为常见的多媒体框架。每种框架都将媒体处理划分为多个阶段,并使用基于管道的体系结构。

Framework 平台
DirectShow Windows(98 及更高版本)
媒体基础 Windows(Vista 及更高版本)
Gstreamer Linux
Quicktime Mac OS X

媒体重定向技术的双跃点支持

  客户端重定向
  浏览器内容重定向
  HDX 网络摄像机重定向
  HTML5 视频重定向
  Windows Media 重定向
多媒体