Product Documentation

Improve multimedia performance

May 27, 2015

The Receiver includes a broad set of technologies that provide a high-definition user experience for today's media-rich user environments. These improve the user experience when connecting to hosted applications and desktops.

Configure HDX Mediastream Windows Media Redirection

HDX Mediastream Windows Media Redirection overcomes the need for the high bandwidths required to provide multimedia capture and playback on virtual Windows desktops accessed from Linux user devices. Windows Media Redirection provides a mechanism for playing the media run-time files on the user device rather than on the server, thereby reducing the bandwidth requirements for playing multimedia files.

Windows Media Redirection improves the performance of Windows Media player and compatible players running on virtual Windows desktops. A wide range of file formats are supported, including:
  • Advanced Systems Format (ASF)
  • Motion Picture Experts Group (MPEG)
  • Audio-Video Interleaved (AVI)
  • MPEG Audio Layer-3 (MP3)
  • WAV sound files
Receiver includes a text-based translation table, MediaStreamingConfig.tbl, for translating Windows-specific media format GUIDs into MIME types GStreamer can use. You can update the translation table to do the following:
  • Add previously unknown or unsupported media filters/file formats to the translation table
  • Block problematic GUIDs to force fall-back to server-side rendering.
  • Add additional parameters to existing MIME strings to allow for troubleshooting of problematic formats by changing a stream's GStreamer parameters
  • Manage and deploy custom configurations depending on the media file types supported by GStreamer on a user device.

With client-side fetching, you can also allow the user device to stream media directly from URLs of the form http://, mms://, or rtsp:// rather than streaming the media through a Citrix server. The server is responsible for directing the user device to the media, and for sending control commands (including Play, Pause, Stop, Volume, Seek), but the server does not handle any media data. This feature requires advanced multimedia GStreamer libraries on the device.

To implement Windows Media Redirection

  1. Install GStreamer, an open-source multimedia framework, on each user device that requires it. Typically, you install GStreamer before you install Receiver.

    Most Linux distributions include GStreamer. Alternatively, you can download GStreamer from http://gstreamer.freedesktop.org.

  2. To enable client-side fetching, install the required GStreamer protocol source plugins for the file types that users will play on the device. You can verify that a plugin is installed and operational using the gst-launch utility. If gst-launch can play the URL, the required plugin is operational. For example, run gst-launch-0.10 playbin2 uri=http://example-source/file.wmv and check the video plays correctly.
  3. When installing Receiver on the device, select the GStreamer option.

Note the following about the client-side fetching feature:

  • By default, this feature is enabled. You can disable it using the SpeedScreenMMACSFEnabled option in the Multimedia section of All-Regions.ini. With this option set to False, Windows Media Redirection is used for media processing.
  • By default, all MediaStream features use the GStreamer playbin2 protocol. You can revert to the earlier playbin protocol for all MediaStream features except Client-Side Fetching, which continues to use playbin2, using the SpeedScreenMMAEnablePlaybin2 option in the Multimedia section of All-Regions.ini.
  • Receiver does not recognize playlist files or stream configuration information files such as .asx or .nsc files. If possible, users should specify a standard URL that does not reference these file types. Use gst-launch to verify that a given URL is valid.

To configure HDX MediaStream Flash Redirection

HDX MediaStream Flash Redirection enables Adobe Flash content to play locally on user devices, providing users with high definition audio and video playback, without increasing bandwidth requirements.

  1. Ensure your user device meets the feature requirements. For more information see System requirements
  2. Add the following parameters to the [WFClient] section of wfclient.ini (for all connections made by a specific user) or the [Client Engine\Application Launching] section of All_Regions.ini (for all users of your environment):
    • HDXFlashUseFlashRemoting=Ask|Never|Always

      Enables HDX Mediastream for Flash on the user device. By default, this is set to Ask and users are presented with a dialog box asking them if they want to optimize Flash content when connecting to web pages containing that content.

    • HDXFlashEnableServerSideContentFetching=Disabled|Enabled

      Enables or disables server-side content fetching for Receiver. By default this is set to Disabled.

    • HDXFlashUseServerHttpCookie=Disabled|Enabled

      Enables or disables HTTP cookie redirection. By default, this is set to Disabled.

    • HDXFlashEnableClientSideCaching=Disabled|Enabled

      Enables or disables client-side caching for web content fetched by Receiver. By default, this is set to Enabled.

    • HDXFlashClientCacheSize= [25-250]

      Defines the size of the client-side cache, in megabytes (MB). This can be any size between 25 and 250 MB. When the size limit is reached, existing content in the cache is deleted to allow storage of new content. By default, this is set to 100.

    • HDXFlashServerSideContentCacheType=Persistent|Temporary|NoCaching
      Defines the type of caching used by Receiver for content fetched using server-side content fetching. By default, this is set to Persistent.
      Note: This parameter is required only if HDXFlashEnableServerSideContentFetching is set to Enabled.
  3. To let Receiver sessions handle keyboard and mouse input inside and outside of any windows that play Flash content, in /config/module.ini change FlashV2=Off to FlashV2=On.

Configure HDX RealTime webcam video compression

HDX RealTime provides a webcam video compression option to improve bandwidth efficiency during video conferencing, ensuring users experience optimal performance when using applications such as GoToMeeting with HD Faces, Skype, or Microsoft Office Communicator.

  1. Ensure your user device meets the feature requirements.
  2. Ensure the Multimedia virtual channel is enabled. To do this, open the module.ini configuration file, located in the $ICAROOT/config directory, and check that MultiMedia in the [ICA3.0] section is set to "On".
  3. Enable audio input by clicking Use my microphone and webcam on the Mic & Webcam page of the Preferences dialog.

Disable HDX RealTime webcam video compression

By default, optimum webcam performance is provided by HDX RealTime Webcam Video Compression. In some circumstances, however, you may require users to connect webcams using USB support. To do this, you must do the following:
  • Disable HDX RealTime Webcam Video Compression
  • Enable USB support for webcams
  1. Add the following parameter to the [WFClient] section of the appropriate .ini file: HDXWebCamEnabled=Off

    For more information, see Customize Receiver using configuration files.

  2. Open the usb.conf file, typically located at $ICAROOT/usb.conf.
  3. Remove or comment out the following line:
    DENY: class=0e # UVC (default via HDX RealTime Webcam Video Compression)
  4. Save and close the file.

Configure H.264 support

Receiver supports the display of H.264 graphics, including HDX 3D Pro graphics, that are served by XenDesktop 7. This support uses the deep compression codec feature, which is enabled by default. The feature provides better performance of rich and professional graphics applications on WAN networks compared with the existing JPEG codec.

Follow the instructions in this topic to disable the feature (and process graphics using the JPEG codec instead). You can also disable text tracking while still enabling deep compression codec support. This helps to reduce CPU costs while processing graphics that include complex images but relatively small amounts of text or non-critical text.

Important: To configure this feature, do not use any lossless setting in the XenDesktop Visual quality policy. If you do, H.264 encoding is disabled on the server and does not work in Receiver.

To disable deep compression codec support

  • In wfclient.ini, set H264Enabled to False. This also disables text tracking.

To disable text tracking only

  • With deep compression codec support enabled, in wfclient.ini set TextTrackingEnabled to False.