マルチメディア

マルチメディアのパフォーマンス

Citrix Workspaceアプリには、メディアリッチな今日のユーザー環境に高品位なユーザーエクスペリエンスを提供する幅広い技術セットが含まれています。これらの技術により、ホストされるアプリケーションやデスクトップでのユーザーエクスペリエンスが向上します。

注:

Linuxバージョン1901以降(GStreamer 0.1)でHDX RealTime Optimization PackとCitrix Workspaceアプリを併用できます。

HDX MediaStream Windows Mediaリダイレクト

HDX MediaStream Windows Mediaリダイレクトを実行すると、Linuxユーザーデバイスでアクセスする仮想Windowsデスクトップでマルチメディア再生時の帯域幅が軽減されます。Windows Mediaリダイレクトは、サーバーではなくユーザーデバイスでメディアランタイムファイルを再生するメカニズムを提供します。その結果、マルチメディアファイルの再生に必要な帯域幅が削減されます。

Windows Mediaリダイレクトは、仮想Windowsデスクトップで実行中のWindows Media Playerおよび互換プレーヤーのパフォーマンスを向上させます。次の形式を含む、さまざまなファイル形式をサポートしています:

  • Advanced Systems Format(ASF)
  • Motion Picture Experts Group(MPEG)
  • Audio-Video Interleaved(AVI)
  • MPEG Audio Layer-3(MP3)
  • WAVサウンドファイル

Citrix Workspaceアプリには、Windows用のメディア形式であるGUIDをGStreamer用のMIMEタイプに変換するためのテキストベースの変換テーブルであるMediaStreamingConfig.tblが含まれています。この変換テーブルは、以下の目的で編集できます:

  • 不明またはサポートされないメディアフィルター/ファイル形式を変換テーブルに追加する。
  • 問題が生じるGUIDをブロックして、強制的にサーバー側でレンダリングされるようにする。
  • GStreamerパラメーターの変更により問題のある形式をトラブルシューティングできるようにするため、パラメーターを既存のMIME文字列に追加する。
  • ユーザーデバイス上のGStreamerによりサポートされているメディアファイルの種類に応じて、カスタムの構成を管理および展開する。

クライアント側でのコンテンツ取得機能を使用すると、次の形式のURLからのストリーム配信メディアを、Citrixサーバーを介さずにユーザーデバイスで直接取得できます:

  • <http://>
  • <mms://>
  • <rtsp://>

サーバーは、ユーザーデバイスをメディアに接続して、再生、一時停止、停止、音量、シークなどの制御コマンドを送信します。メディアデータの処理は行いません。この機能を使用するには、ユーザーデバイス上に高度なマルチメディアGStreamerライブラリをインストールする必要があります。

HDX MediaStream Windowsメディアリダイレクトを実装するには:

  1. オープンソースのマルチメディアフレームワークであるGStreamer 0.10を各ユーザーデバイス上にインストールします。通常、Citrix Workspaceアプリをインストールする前にGStreamerをインストールして、Citrix WorkspaceアプリがインストールプロセスでGStreamerの使用を構成できるようにします。

    ほとんどのLinuxディストリビューションにはGStreamerが含まれています。または、http://gstreamer.freedesktop.orgからGStreamerをダウンロードできます。

  2. クライアント側でのコンテンツ取得機能を有効にするには、再生するメディアのファイルタイプに対応するGStreamerのプロトコルソースプラグインをインストールします。このプラグインのインストールおよび動作を確認するには、gst-launchユーティリティを使用します。このプラグインが正しくインストールされている場合、gst-launchでURLのマルチメディアを再生できます。たとえば、gst-launch-0.10 playbin2 uri=<http://example-source/file.wmv>を実行してビデオが正しく再生されるかチェックします。

  3. デバイス上でCitrix Workspaceアプリをインストールするときに、Tarballスクリプトを使用している場合、GStreamerオプションを選択します(この手順は.debおよび.rpmパッケージでは自動で実行されます)。

クライアント側でのコンテンツ取得機能を使用する場合は、次のことに注意してください:

  • この機能は、デフォルトで有効になります。無効にするには、All-Regions.iniファイルのMultimediaセクションにあるSpeedScreenMMACSFEnabledオプションを使用します。ここで「False」を指定すると、Windows Mediaリダイレクト機能が使用されます。
  • デフォルトでは、すべてのMediaStream機能でGStreamerのplaybin2プロトコルが使用されます。クライアント側でのコンテンツ取得機能を除くすべてのMediaStream機能を従来のplaybinプロトコルに戻すことができます。クライアント側でのコンテンツ取得機能では、All-Regions.iniファイルのMultimediaセクションにあるSpeedScreenMMAEnablePlaybin2オプションを使用して、常にplaybin2プロトコルを使用します。
  • Citrix Workspaceアプリでは、.asx.nscなどのストリーム構成情報ファイルや再生リストファイルを認識できません。可能な場合は、これらのファイルを参照しない標準的なURLをユーザーが指定する必要があります。URLが有効かどうかは、gst-launchを使用して確認できます。

GStreamer 1.0に関する注意事項 :

  • デフォルトでは、GStreamer 0.10はHDX MediaStream Windows Mediaリダイレクトに使用されます。GStreamer 1.0は、GStreamer 0.10が使用できない場合にのみ使用されます。
  • GStreamer 1.0を使用する場合は、次の手順を実行します:
  1. GStreamerプラグインのインストール先ディレクトリを検出します。プラグインのインストール先は、ディストリビューション、OSアーキテクチャ、GStreamerのインストール方法によって異なります。一般的なインストールパスは/usr/lib/x86\_64-linux-gnu/gstreamer-1.0 or $HOME/ .local/share/gstreamer-1.0です。
  2. Linux向けCitrix Workspaceアプリのインストールディレクトリを検出します。スーパーユーザー(root)のデフォルトのインストールディレクトリは、/opt/Citrix/ICAClientです。非スーパーユーザーのデフォルトのインストールディレクトリは、$HOME/ICAClient/platform(プラットフォームはlinuxx64など)です。詳しくは、「インストールとセットアップ」を参照してください。
  3. GStreamerプラグインディレクトリでシンボリックリンクを作成してlibgstflatstm1.0.soをインストールします:ln -sf $ICACLIENT\_DIR/util/libgstflatstm1.0.so $GST\_PLUGINS\_PATH/libgstflatstm1.0.so。この手順には、権限の昇格(sudo権限など)が必要な場合があります。
  4. gst_play1.0をプレーヤーとして使用します: ln -sf $ICACLIENT\_DIR/util/gst\_play1.0 $ICACLIENT\_DIR/util/gst\_play。この手順には、権限の昇格(sudo権限など)が必要な場合があります。
  • HDX RealTime Webカメラビデオ圧縮でGStreamer 1.0を使用する場合は、gst_read1.0をリーダーとして使用します:ln -sf $ICACLIENT\_DIR/util/gst\_read1.0 $ICACLIENT\_DIR/util/gst\_read

GStreamer 1.xの有効化

1912より前のリリースでは、GStreamer 0.10がマルチメディアリダイレクトでサポートされるデフォルトのバージョンでした。1912リリース以降、GStreamer 1.xをデフォルトのバージョンとして構成することができます。

制限事項:

  • ビデオを再生すると、早送りおよび巻き戻しオプションが正常に機能しないことがあります。
  • ARMHFデバイスでCitrix Workspaceアプリを起動すると、GStreamer 1.xが正常に機能しないことがあります。

GStreamer 1.xをインストールするには

GStreamer 1.xフレームワークと以下のプラグインをhttps://gstreamer.freedesktop.org/documentation/installing/on-linux.htmlからインストールします:

  • Gstreamer-plugins-base
  • Gstreamer-plugins-bad
  • Gstreamer-plugins-good
  • Gstreamer-plugins-ugly
  • Gstreamer-libav

バイナリをローカルにビルドするには

SUSEやopenSUSEなどの一部のLinux OSディストリビューションでは、デフォルトのソースリストにGStreamerパッケージが見つからないことがあります。この場合、ソースコードをダウンロードし、すべてのバイナリをローカルにビルドします。

  1. https://gstreamer.freedesktop.org/src/からソースコードをダウンロードします。
  2. コンテンツを抽出します。
  3. 解凍されたパッケージがあるディレクトリに移動します。
  4. 次のコマンドを実行します:

    $sudo ./configure
    $sudo make
    $sudo make install
    <!--NeedCopy-->
    

デフォルトでは、生成されたバイナリは/usr/local/lib/gstreamer-1.0/で利用可能です。

トラブルシューティングについて詳しくは、Knowledge Centerの記事CTX224988を参照してください。

GStreamer 1.xを構成するには

GStreamer 1.xをCitrix Workspaceアプリで使用できるように構成するには、シェルプロンプトを使用して以下の構成を適用します:

  • $ln -sf $ICACLIENT_DIR/util/libgstflatstm1.0.so $GST_PLUGINS_PATH/libgstflatstm1.0.so。
  • $ln -sf $ICACLIENT_DIR/util/gst_play1.0 $ICACLIENT_DIR/util/gst_play

各項目の意味は次のとおりです。

  • ICACLIENT_DIR - Linux向けCitrix Workspaceアプリのインストールパスです。
  • GST_PLUGINS_PATH - GStreamerのプラグインパスです。たとえば、64ビットDebianマシンでは、/usr/lib/x86_64-linux-gnu/gstreamer-1.0/です。

制限事項:

  • バージョン2106より前のリリースでは、GStreamerバージョン1.15.1以降を使用する際に、Webカメラのリダイレクトが失敗し、セッションが切断されることがあります。

HDX MediaStream Flashリダイレクト

HDX MediaStream Flashリダイレクトにより、Adobe Flashコンテンツをユーザーデバイス上でローカルに再生できるようになります。この機能により、帯域幅要件を増やすことなく、高解像度のオーディオとビデオの再生が可能になります。

  1. この機能に必要な要件をユーザーデバイスが満たしていることを確認します。詳しくは、「システム要件」を参照してください。

  2. 次のパラメーターをwfclient.iniの[WFClient]セクションに追加します(特定のユーザーによって確立されたすべての接続用)。または、All\_Regions.iniの[Client Engine\Application Launching]セクションを追加します(環境のすべてのユーザー用):

    • HDXFlashUseFlashRemoting=Ask: Never; Always

      ユーザーデバイス上でHDX MediaStream for Flashを有効にします。デフォルトでは、この値は Neverに設定されています。また、このFlashコンテンツを含むWebページに接続したときに、コンテンツを最適化するかどうかを確認するダイアログボックスがユーザーに表示されます。

    • HDXFlashEnableServerSideContentFetching=Disabled; Enabled

      Citrix Workspaceアプリのサーバー側でのコンテンツ取得機能を有効または無効にします。デフォルトでは、この値はDisabledに設定されています。

    • HDXFlashUseServerHttpCookie=Disabled; Enabled

      HTTP Cookieのリダイレクトを有効または無効にします。デフォルト値は、Disabledに設定されています。

    • HDXFlashEnableClientSideCaching=Disabled; Enabled

      Citrix Workspaceアプリにより取得されたWebコンテンツのクライアント側キャッシュを有効または無効にします。デフォルト値は、Enabledに設定されています。

    • HDXFlashClientCacheSize= [25-250]

      クライアント側でのキャッシュのサイズを、MB単位で定義します。この値は、25MB~250MBの間で定義できます。サイズが制限値に到達すると、キャッシュ内の既存のコンテンツが削除され、新しいコンテンツが保存されます。デフォルト値は、100に設定されています。

    • HDXFlashServerSideContentCacheType=Persistent: Temporary; NoCaching

      サーバー側でのコンテンツ取得機能により取得されたコンテンツのCitrix Workspaceアプリでのキャッシュの種類を定義します。デフォルト値は、 Persistentに設定されています。

      注: このパラメーターは、 HDXFlashEnableServerSideContentFetchingEnabledに設定した場合にのみ必要です。

  3. Flashリダイレクトはデフォルトで無効になっています。/config/module.iniファイルで、FlashV2=OffをFlashV2=Onに変更して、この機能を有効にします。

HDX RealTime Webカメラビデオ圧縮

HDX RealTime機能のWebカメラビデオ圧縮オプションを使用すると、ビデオ会議で消費される帯域幅を効率化できます。このオプションにより、GoToMeeting HDFaces、Skype for Businessなどのアプリケーションを使用するときに最適なパフォーマンスが提供されます。

  1. この機能に必要な要件をユーザーデバイスが満たしていることを確認します。
  2. Multimedia仮想チャネルが有効になっていることを確認します。これを有効にするには、$ICAROOT/config/module.iniファイルを開き、[ICA3.0]セクションのMultiMediaOnに設定されていることを確認します。
  3. オーディオ入力を有効にするには、[基本設定] ダイアログボックスの [マイクとWebカメラ]ページで、[マイクとWebカメラを使用する] をクリックします。

HDX RealTime Webカメラビデオ圧縮の無効化

デフォルトでは、HDX RealTime Webカメラビデオ圧縮機能によりWebカメラのパフォーマンスが最適化されます。ただし一部の環境では、ユーザーがUSBサポート機能を使ってWebカメラを接続しなければならない場合があります。この接続を行うには、次のことを実行する必要があります:

  • HDX RealTime Webカメラビデオ圧縮を無効にする
  • WebカメラのUSBサポートを有効にする
  1. 次のパラメーターを適切なINIファイルの[WFClient]セクションに追加する:

    AllowAudioInput=False

    詳しくは、「デフォルト設定」を参照してください。

  2. usb.confファイルを開きます。通常このファイルは、$ICAROOT/usb.confにあります。

  3. 次の行を削除するか、コメントアウトします:

    DENY: class=0e # UVC(HDX RealTime Webカメラビデオ圧縮経由のデフォルト)

  4. ファイルを保存して閉じます。

H.264

Citrix Workspaceアプリでは、Citrix Virtual Apps and Desktops 7で配信されるHDX 3D Proグラフィックを含むH.264グラフィックがサポートされます。この機能では、デフォルトで有効になっている深圧縮コーデックが使用されます。これにより、専門的なグラフィック処理アプリケーションをWANネットワークを介して使用する場合でも、既存のJPEGフォーマットよりも高いパフォーマンスが提供されます。

注:

H.264では、Linux向けCitrix WorkspaceアプリはYUV 420形式のみをサポートし、YUV 444形式はサポートしていません。

この機能を無効にする(つまりグラフィックをJPEGコーデックで処理する)には、このトピックの手順に従ってください。深圧縮コーデックを有効にしたまま、テキストトラッキングを無効にすることもできます。グラフィックに含まれるテキストが多くないまたは重要でない場合は、テキストトラッキングを無効にすることにより、複雑なグラフィック処理時のCPU負荷を軽減できます。

重要:

この機能を構成する場合は、Citrix Virtual Apps and DesktopsまたはCitrix DaaSの[表示品質]設定で無損失品質を指定しないでください。無損失品質を指定するとサーバー側のH.264エンコーディングが無効になり、Citrix Workspaceアプリでこの機能が動作しなくなります。

深圧縮コーデックのサポートを無効にするには:

wfclient.iniファイルで、H264EnabledFalseに設定します。これにより、テキストトラッキングも無効になります。

テキストトラッキングのみを無効にするには:

深圧縮コーデックのサポートを有効にしたまま、wfclient.iniファイルでTextTrackingEnabledFalseに設定します。

マルチメディア