Product Documentation

Enhancing the User Experience With HDX

Oct 09, 2015

HDX MediaStream for Flash allows you to move the processing of Adobe Flash content to user devices rather than using network resources. This results in a high-definition experience when using Windows Internet Explorer to access Flash content, including animations, videos, and applications. By moving the processing to the user device, HDX MediaStream for Flash reduces server and network load, resulting in greater scalability.

System Requirements for HDX MediaStream for Flash

HDX MediaStream for Flash supports all operating systems supported by Citrix XenApp 6 for Windows Server 2008 R2.

Requirements:

  • User device is Windows-based.
  • Citrix online plug-in 11.2 or 12.0 is installed on the user device.
  • Low latency LAN-type network connection is in use.
  • Adobe Flash Player 10 is installed on the user device and servers running XenApp.
    Note: If an earlier version of the Flash Player is installed, or the Flash Player is not installed, Flash content is rendered on the server.
  • Only Windows Internet Explorer browsers with ActiveX capabilities are supported (Windows Internet Explorer 7 and 8) and should be available to the user device from the server.
  • HDX server-side installations on computers running Windows Server 2003 require the update contained in the Microsoft Knowledge Base article KB956572, available from the Microsoft Web site.

Removing HDX MediaStream for Flash

To remove HDX MediaStream for Flash from the server, use the Uninstall a program option accessed in the Control Panel, selecting Citrix HDX MediaStream for Flash - Server.

Configuring HDX MediaStream for Flash Settings

After installation on the server, HDX MediaStream for Flash is enabled for client-side acceleration by default. No further configuration is needed. If you want to change the default settings, you can do so with the following Citrix User Policy settings on the server:

  • Flash acceleration
  • Flash event logging
  • Flash latency threshold
  • Flash server-side content fetching whitelist
  • Flash URL blacklist

After installation on user devices and in the absence of any overriding Policy settings on the client, HDX MediaStream for Flash is ready for use by your users. No further configuration is needed. If you want to change the default settings on the user device, you can do so with the Group Policy Object Editor.

When users connect to an Adobe Flash application for the first time during a XenApp session, a dialog box appears advising them to enable HDX MediaStream for Flash only if they trust the program to which they are connecting. Your users can then enable or disable HDX MediaStream for Flash. The dialog box does not reappear during the current XenApp session, but returns the first time the user accesses Flash content during future XenApp sessions. If users do not enable HDX MediaStream for Flash, the Flash content plays on the server.

It is possible to add and configure the Group Policy Objects prior to installation on the client device. If the Group Policy Objects are set to enable prior to installation, HDX MediaStream for Flash will be enabled on the user device and the dialog box will not appear to the user.
Caution:

HDX MediaStream for Flash requires significant interaction between the user device and server components. Therefore, this feature should only be used in environments where security separation between the user device and server is not needed. User devices should be configured to use the HDX MediaStream for Flash feature only with trusted servers. HDX MediaStream for Flash requires the Flash Player to be installed on the user device. Therefore, HDX MediaStream for Flash should only be enabled if the Flash Player itself is secured.

To configure HDX MediaStream for Flash on the User Device with Group Policy Objects

  1. Create or select an existing Group Policy Object.
  2. Import and add the HDX MediaStream for Flash - Client administrative template (HdxFlash-Client.adm), available in:
    • For 32-bit computers: %Program Files%\Citrix\ICA Client\Configuration\language.
    • For 64-bit computers: %Program Files (x86)%\Citrix\ICA Client\Configuration\language
Note: For details on creating Group Policy Objects and importing and adding templates, see the Microsoft Active Directory documentation at http://www.microsoft.com.

Configuring HDX MediaStream for Flash on the Server

You can configure HDX MediaStream for Flash settings on the server through the Policies node of the Delivery Services Console. You control the settings for the HDX MediaStream for Flash features through the following Citrix User Policy settings:
  • Flash acceleration
  • Flash event logging
  • Flash latency threshold
  • Flash server-side content fetching whitelist
  • Flash URL blacklist

To enable and disable HDX MediaStream for Flash from the server

HDX MediaStream for Flash is enabled on the server for client-side rendering by default. You can enable and disable HDX MediaStream for Flash from the server through the Citrix User Policy setting Flash acceleration, in the HDX MediaStream for Flash (client side) category.

Configure the Flash acceleration setting by selecting Enable, the default, or Disable.

When Enable is selected, all Flash content from sites not blocked by the Flash URL blacklist are rendered on the user device. If Disable is selected, all Flash content is rendered on the server.

To enable server-side event logging

HDX MediaStream for Flash uses Windows event logging on the server to log events. You can review the event log to determine whether HDX MediaStream for Flash is being used and gather details about any issues. The following are common to all events logged by HDX MediaStream for Flash:
  • HDX MediaStream for Flash reports events to the Application log
  • The Source value is Flash
  • The Category value is None

In addition to the Windows event log, on computers with Windows Server 2008 or Windows Server 2008 R2, an HDX MediaStream for Flash-specific log appears in the Applications and Services Logs node. If Windows Server 2003 is used, HDX MediaStream for Flash log information is only found in the Windows event log.

Configure the Flash event logging setting by selecting Enable, the default, or Disable.

To set the Flash latency threshold

HDX MediaStream for Flash detects the level of network latency between the server and user device the first time an individual browser or browser tab accesses an embedded Flash Player. If latency is determined to be within an acceptable threshold, HDX MediaStream for Flash is used to render Flash content on the user device. If the latency is above this threshold, the network server renders the content if a Flash player is available there.

The default threshold setting is 30 milliseconds.

Configure the Flash latency threshold setting by typing a value between 0 and 30 in the Value field.

To identify Web sites for server-side content fetching

HDX MediaStream for Flash downloads Flash content to the user device where it is played. The Flash server-side content fetching whitelist setting allows you to specify Web sites whose Flash content can be downloaded to the server then sent to the user device. This setting works in conjunction with Enable server-side content fetching setting on the user device

This setting is frequently used when the user device does not have direct access to the Internet. The XenApp server provides that connection.

Consider the following when configuring the Flash server-side content fetching whitelist setting:
  • Add the top-level .html page that instantiates the Flash Player to the whitelist; not the URL of the Flash application.
  • Use an asterisk character at the beginning or end of the URL as a wildcard to expand your list.
  • Use a trailing wildcard to allow all child URLs, for example http://www.sitetoallow.com/*).
  • The prefixes http:// or https:// are used when present, but they are not required.
Configure the Flash server-side content fetching whitelist setting by clicking New to add new URLs to the whitelist.
Important: The Enable server-side content fetching setting on the user device must also be enabled for the Flash server-side content fetching whitelist on the server to work.

To block Web sites from working with HDX MediaStream for Flash

Block specified Web sites from playing on user devices with HDX MediaStream for Flash by adding the sites' URLs to a blacklist. Instead, the blocked Flash content plays on the server.

Consider the following when configuring the Flash URL blacklist setting:
  • Add the top-level .html page that instantiates the Flash Player to the blacklist; not the URL of the Flash application.
  • Use an asterisk character at the beginning or end of the URL as a wildcard to expand your list.
  • Use a trailing wildcard to block all child URLs, for example http://www.sitetoblock.com/*).
  • The prefixes http:// or https:// are treated equally, so http://www.sitetoblock.com/ is treated the same as https://www.sitetoblock.com/.
  • Add sites containing Flash content that does not render correctly on the user device to the blacklist.

Configure the Flash URL blacklist setting by clicking New to add new URLs to the blacklist.

Configuring HDX MediaStream for Flash on the User Device

After installation on user devices and in the absence of any overriding policy settings on the client, HDX MediaStream for Flash is ready for use by your users. No further configuration is needed. If you want to change the default settings on the user device, you can do so with the Group Policy Object Editor:
  • Enable HDX MediaStream for Flash on the user device
  • Enable synchronization of the client-side HTTP cookies with the server-side
  • Enable server-side content fetching

To enable HDX MediaStream for Flash on the user device

  1. In the Group Policy Object Editor, expand either the Computer Configuration or User Configuration node.
  2. Expand the Administrative Templates and Classic Administrative Templates (ADM) nodes and select HDX MediaStream for Flash - Client.
  3. From the Setting list, select Enable HDX MediaStream for Flash on the user device and open the Properties dialog box.
  4. Select Not Configured, Enabled, or Disabled.
  5. If you selected Enabled, from the Use HDX MediaStream for Flash list, select Always, Ask, or Never.
    Note: Selecting Ask results in users receiving a dialog box the first time they access Flash content in each XenApp session in which the user can enable HDX MediaStream for Flash. If the user does not enable HDX MediaStream for Flash, the Flash content is played on the server. Selecting Always and Never do not result in this dialog box. Select Always to always use HDX MediaStream for Flash to play Flash content on the user device. Select Never to never use HDX MediaStream for Flash and have Flash content play on the server.
  6. For the policy to take effect:
    • Computer Configuration: Changes take effect as computers in the organizational unit restart.
    • User Configuration: Users in the organizational unit must log off and then log on to the network.

To enable synchronization of the client-side HTTP cookies with the server-side

Enable synchronization of the client-side HTTP cookies with the server-side in order to download HTTP cookies from the server. These HTTP cookies are then used for client-side content fetching and available to be read, as needed, by sites containing Flash content. Client-side cookies are not replaced during the synchronization; they remain available if the synchronization policy is later disabled.

  1. In the Group Policy Object Editor, expand either the Computer Configuration or User Configuration node.
  2. Expand the Administrative Templates and Classic Administrative Templates (ADM) nodes and select HDX MediaStream for Flash - Client.
  3. From the Setting list, select Enable synchronization of the client-side HTTP cookies with the server-side and open the Properties dialog box.
  4. Select Not Configured, Enabled, or Disabled.
  5. For the policy to take effect:
    • Computer Configuration: Changes take effect as computers in the organizational unit restart.
    • User Configuration: Users in the organizational unit must log off and then log on to the network.

To enable server-side content fetching

By default, HDX MediaStream for Flash downloads Adobe Flash content to and plays the content on the user device. Enabling server-side content fetching causes the Flash content to download to the server and then send it to the user device. Unless there is an overriding policy, such as a blacklist, the content will play on the user device.
Important: The Flash server-side content fetching whitelist setting on the server must be enabled and populated with target URLs for server-side content fetching to work.
  1. In the Group Policy Object Editor, expand either the Computer Configuration or User Configuration node.
  2. Expand the Administrative Templates and Classic Administrative Templates (ADM) nodes and select HDX MediaStream for Flash - Client.
  3. From the Setting list, select Enable server-side content fetching and open the Properties dialog box.
  4. Select Not Configured, Enabled, or Disabled.
  5. For the policy to take effect:
    • Computer Configuration: Changes take effect as computers in the organizational unit restart.
    • User Configuration: Users in the organizational unit must log off and then log on to the network.

Configuring Audio

You can configure audio through the Policies node of the Delivery Services Console. You control the settings for the audio features through the following Citrix User Policy settings:

  • Audio quality
  • Client audio redirection
  • Client microphone redirection
  • Audio redirection bandwidth limit
  • Audio redirection bandwidth limit percent

To set audio quality

Generally, higher sound quality requires more bandwidth and greater server CPU utilization. You can use sound compression to balance sound quality and overall session performance. Use policy settings to configure the compression levels you want to apply to sound files.

Consider creating separate policies for groups of dial-up users and for those who connect over a LAN. Over dial-up connections, where bandwidth typically is limited, users likely care more about download speed than sound quality. For such users, create a policy for dial-up connections that applies high compression levels to sound and another for LAN connections that applies lower compression levels.

Configure the Audio quality setting by choosing from these audio quality levels:
  • Low - for low speed connections. Audio playback consumes a maximum of 11 kbps of bandwidth. With both audio playback and recording total bandwidth consumption is 22 kbps at maximum. Ideal for multimedia conferences when using low speed connections.
  • Medium - optimized for speech. Audio playback consumes a maximum of 16.8 kbps of bandwidth. With both audio playback and recording total bandwidth consumption is 33.6 kbps at maximum. Ideal for multimedia conferences.
  • High - high definition audio. Audio playback consumes a maximum of 96 kbps of bandwidth. With both audio playback and recording total bandwidth consumption is 166 kbps at maximum. Ideal for music and video playback.
    Note: High definition increases bandwidth requirements by sending more audio data to user devices and increases server CPU utilization.

To disable speakers

You can allow users to receive audio from an application on a server through speakers or other sound devices, such as headphones, on their client devices. Client audio mapping can cause excessive load on the servers and the network.

Configure the Client audio redirection setting by choosing Allowed, the default, or Prohibited.

Important: When Client audio redirection is disabled, all audio functionality is disabled.

To activate user device microphones

You can allow users to record audio using input devices such as microphones on the user device. To record audio, the user device needs either a built-in microphone or a device that can be plugged into the microphone jack.

If audio is disabled on the client software, this setting has no effect.

The Client audio redirection setting must be enabled for an enabled Client microphone redirection to work.

For security, users are alerted when servers that are not trusted by their user devices try to access microphones. Users can choose to accept or not accept access. Users can disable the alert on the Citrix online plug-in.

Configure the Client microphone redirection setting by choosing Allowed, the default, or Prohibited.

To set audio redirection bandwidth limits

You can set limits on the allowed bandwidth in kilobits for playing and recording audio. Use the Audio redirection bandwidth limit setting to identify a specific maximum kilobit per second bandwidth for a session. Use the Audio redirection bandwidth limit percent to identify the maximum percentage of the total available bandwidth to be used. If both settings are configured, the one with the lowest bandwidth limit is used.

Configure the Audio redirection bandwidth limit and Audio redirection bandwidth limit percent by typing a number in the Value field.

Avoiding Echo During Multimedia Conferences With HDX RealTime

When users take part in audio or video conferences, they may hear an echo in their audio. Echoes usually occur when speakers and microphones are too close to each other. For that reason, Citrix recommends the use of headsets for audio and video conferences.

HDX RealTime provides an echo cancellation option, enabled by default, which minimizes echo during a conference. For echo cancellation to be most effective, the user should select either Medium - optimized for speech or Low - for low-speed connections audio quality. The High - high definition audio setting is intended for music playback, rather than conference speech and should be avoided for conferences.

The effectiveness of echo cancellation is sensitive to the distance between the speakers and the microphone. These devices must not be too close to each other or too far from each other.

Echo cancellation is available with only Citrix Online Plug-in 12.0 for Windows and Web Interface 5.3.

To enable or disable echo cancellation

  1. For 32-bit computers: On the user device, open the registry and navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\ICA Client\Engine\Configuration\Advanced\Modules\ClientAudio\EchoCancellation.
    For 64-bit computers: On the user device, open the registry and navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\ICA Client\Engine\Configuration\Advanced\Modules\ClientAudio\EchoCancellation.
    Caution: Editing the Registry incorrectly can cause serious problems that may require you to reinstall your operating system. Citrix cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. Be sure to back up the registry before you edit it.
  2. In the Value data field, type TRUE or FALSE to enable or disable echo cancellation.

Multimedia Conferencing with HDX RealTime

HDX RealTime provides your users with a complete desktop multimedia conferencing feature.

System Requirements for HDX RealTime Multimedia Conferencing

The following conditions are required to use the HDX RealTime multimedia conferencing feature:

  • Install Citrix Online Plug-in 12.0 for Windows on the user device.
  • Install Microsoft Office Communications Server 2007 in the same environment as the computer running XenApp. This is not a published application.
    Note: Best practice indicates installing Microsoft Office Communications Server 2007 on a different computer than XenApp.
  • Publish Microsoft Office Communicator 2007 on your XenApp server.
  • Ensure the user device has the appropriate hardware to produce sound.
  • Assign one processor per user per session, whether physical or virtual devices are used for video conferencing.
  • Use the web camera default settings.
  • Enable the following three policies settings:
    • Multimedia conferencing
    • Client audio redirection
    • HDX MediaStream Multimedia Acceleration (see Configuring HDX MediaStream Multimedia Acceleration)
  • Install Drivers for web cameras on the user device. Where possible, use drivers obtained from the camera manufacturer, rather than from a third party.
    Note: Only one web camera is supported at a time. If a device has multiple web cameras attached, HDX RealTime tries the first camera found, continuing in succession until a connection is made.

Configuring Multimedia Conferencing

Multimedia conferencing is a Citrix Computer Policy setting. This policy allows or prevents support for multimedia conferencing applications. By default, Multimedia conferencing is enabled.

Configuring Client Audio redirection

Client audio redirection is a Citrix User Policy setting. It allows or prevents the redirection of sound from a hosted application to a sound device on the user device. When enabled, users can also record sound from their devices. Client audio redirection is enabled by default.

Increasing 2D and 3D Application Scalability and Performance

HDX 3D allows graphics-heavy applications running on XenApp on a physical server to render on the server's graphics processing unit (GPU). By moving DirectX, Direct3D and Windows Presentation Foundation (WPF) rendering to the server's GPU, the server's central processing unit (CPU) is not slowed by graphics rendering. Additionally, the server is able to process more graphics because the workload is split between the CPU and GPU. This feature is only available on servers with a GPU that supports a display driver interface (DDI) version of 9ex, 10, or 11. DirectX and Direct3D require no special settings.

To enable WPF applications to render using the server's GPU, in the HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\CtxHook\AppInit_Dlls\Multiple Monitor Hook subkey in the registry of the server running XenApp, create the EnableWPFHook key with a key type of REG_DWORD and set its value to 1.

Caution: Editing the Registry incorrectly can cause serious problems that may require you to reinstall your operating system. Citrix cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. Be sure to back up the registry before you edit it.