マルチメディア
HDX技術スタックは、マルチメディアアプリケーションの配信を次の2.つの相補的なアプローチでサポートします。
- サーバー側でレンダリングするマルチメディア配信
- クライアント側でレンダリングするマルチメディアリダイレクト
これにより、良好なユーザーエクスペリエンスを保ちながら、サーバースケーラビリティを向上させ、ユーザーごとのコストを削減するあらゆる種類のマルチメディアフォーマットを配信できます。
サーバー側でレンダリングするマルチメディア配信で,オーディオとビデオコンテンツは,アプリケーションによってXenAppまたはXenDesktopサーバー上でデコードおよびレンダリングされます。コンテンツは圧縮され,ICAプロトコルでユーザーデバイス上のCitrix接收机に配信されます。この方法は,さまざまなアプリケーションとメディア形式に対して,最大レートの互換性を提供します。ビデオ処理は数値計算であるため,サーバー側でレンダリングされたマルチメディア配信はオンボードのハードウェアアクセラレーションの利点を大幅に活かすことがきます。たとえば举视频加速(DXVA)のサポートは,hデコーディングを別のハードウェアで実行することで,CPUをオフロードします。英特尔快速同步とNVIDIA NVENCの機能により,ハードウェアアクセラレーション用のhエンコーディングが利用できるようになりました。
ほとんどのサーバーにビデオ圧縮用のハードウェアアクセラレーションがないため、すべてのビデオ処理をサーバーの中央处理器で実行する場合は、サーバースケーラビリティに悪影響を及ぼします。高サーバースケーラビリティを維持するために、多くのマルチメディア形式をユーザーデバイスにリダイレクトして、ローカル側でレンダリングできます。视窗媒体リダイレクトは、一般的にWindows Media Playerに関連した、さまざまな種類のメディア形式に対してサーバーをオフロードします。
闪光リダイレクトは、ユーザーデバイス上でローカルに実行される闪光播放器にAdobe Flashビデオコンテンツをリダイレクトします。 HTML5ビデオが普及し、シトリックスはこのタイプのコンテンツに対してリダイレクトテクノロジを導入しました。 また、一般的なアドレス帳リダイレクト機能である、ホストからクライアントへのリダイレクトとローカルアプリアクセスを、マルチメディアコンテンツに適用できます。
これらの機能を含めて,リダイレクトを構成しない場合は,HDXはサーバー側でのレンダリングを実行します。リダイレクトを構成する場合,HDXはサーバー側でフェッチし,クライアント側でレンダリング,またはクライアント側でフェッチし,クライアント側でレンダリングのいずれかを実行します。これらの方法が失敗した場合,HDXは必要に応じてサーバー側でのレンダリングにフォールバックし,フォールバック防止ポリシーの対象になります。
サンプルシナリオ
シナリオ1。(サーバー側でフェッチし,サーバー側でレンダリング):
- サーバーはメディアファイルをソースからフェッチし,デコードし,コンテンツをオーディオデバイスまたはディスプレイデバイスに対して再生します。
- サーバーは再生されたイメージまたはサウンドをディスプレイデバイスまたはオーディオデバイスからそれぞれ抽出します。
- オプションとしてサーバーが抽出されたファイルを圧縮し、クライアントに送信します。
このアプローチでは、(抽出されたイメージやサウンドが効率的に圧縮されていない場合は)高中央处理器コストと高帯域幅コストを負担することになり、サーバースケーラビリティは低くなります。
细导线とオーディオの仮想チャネルがこのアプローチを処理します。このアプローチの利点により、クライアントのハードウェアとソフトウェアの要件が削減されます。このアプローチでは、デコーディングはサーバーで実行され、より多くの種類のデバイスとフォーマットに対応します。
シナリオ2。(サーバー側でフェッチし,クライアント側でレンダリング):
このアプローチは、オーディオまたはディスプレイデバイスに対してデコードおよび再生される前に、メディアコンテンツをインターセプトできることを前提としています。圧縮されたオーディオ/ビデオコンテンツは、クライアントに送信され、ローカルでデコードおよび再生されます。このアプローチの利点により、デコーディングとプレゼンテーションはクライアントデバイスにオフロードされ、サーバーの中央处理器サイクルが節約されます。
ただし,このアプローチでは,クライアントにハードウェアとソフトウェアの要件が一部追加されます。クライアントは,受信する可能性のあるそれぞれのフォーマットをデコードできる必要があります。
シナリオ3. (クライアント側でフェッチし、クライアント側でレンダリング):
このアプローチは、ソースからフェッチされる前に、メディアコンテンツの统一资源定位地址をインターセプトできることを前提としています。统一资源定位地址は、メディアコンテンツがローカルでフェッチ、デコード、および再生されたクライアントに送信されます。このアプローチは概念的に単純です。この利点により、制御コマンドのみがサーバーから送信されるため、サーバーの中央处理器サイクルと帯域幅の両方が節約されます。ただし、メディアコンテンツは、クライアントに常にアクセスできるわけではありません。
フレームワークとプラットフォーム
デスクトップオペレーティングシステム(Windows、Mac OS X)および(Linux)は、マルチメディアアプリケーションのよりすばやく簡単な開発を可能にする、マルチメディアフレームワークを提供します。次の表に、より一般的なマルチメディアフレームワークの一部を示します。各フレームワークはメディア処理を複数の段階に分割して、パイプラインベースのアーキテクチャを使用します。
フレームワーク | プラットフォーム |
---|---|
DirectShow的 | Windows(98年以降) |
媒体基金会 | Windows Vista(以降) |
Gstreamer | Linux |
Quicktime | MacOSX |
メディアリダイレクト機能によるダブルホップのサポート
メディアリダイレクト | サポート |
---|---|
HDX闪存リダイレクト | いいえ |
视窗媒体リダイレクト | はい |
HTML5ビデオリダイレクト | はい |
オーディオリダイレクト | なし |