マルチメディア

HDX™テクノロジースタックは、2つの補完的なアプローチを通じてマルチメディアアプリケーションの配信をサポートします。

  • サーバー側レンダリングによるマルチメディア配信
  • クライアント側レンダリングによるマルチメディアリダイレクト

この戦略により、優れたユーザーエクスペリエンスで幅広いマルチメディア形式を配信できると同時に、サーバーのスケーラビリティを最大化してユーザーあたりのコストを削減できます。

サーバーレンダリングによるマルチメディア配信では、オーディオおよびビデオコンテンツは、アプリケーションによってCitrix Virtual Apps and Desktopsサーバー上でデコードおよびレンダリングされます。その後、コンテンツは圧縮され、ICAプロトコルを使用してユーザーデバイス上のCitrix Workspaceアプリに配信されます。この方法は、さまざまなアプリケーションやメディア形式との互換性を最大限に高めます。ビデオ処理は計算負荷が高いため、サーバーレンダリングによるマルチメディア配信は、オンボードのハードウェアアクセラレーションから大きな恩恵を受けます。たとえば、DirectX Video Acceleration (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)は、マルチメディアアプリケーションのより迅速な開発を可能にするマルチメディアフレームワークを提供します。この表は、より一般的なマルチメディアフレームワークの一部をリストしています。各フレームワークは、メディア処理をいくつかの段階に分け、パイプラインベースのアーキテクチャを使用します。

フレームワーク プラットフォーム
ダイレクトショー Windows (98以降)
メディアファンデーション Windows (Vista以降)
Gストリーマー Linux
クイックタイム Mac OS X

メディアリダイレクトテクノロジーによるダブルホップサポート

  オーディオリダイレクト いいえ
  ブラウザコンテンツリダイレクト いいえ
  HDXウェブカメラリダイレクト はい
  HTML5ビデオ リダイレクト はい
  Windows Media リダイレクト はい
マルチメディア