Horizon Client for Mac provides a VMware Blast menu item that allows you to configure options related to the VMware Blast display remoting protocol. Most of these options control VMware Blast's use of video compression methods, also known as decoding methods or codecs.

VMware Blast Codec Support

VMware Blast supports the use of industry-standard codecs such as H.264 and HEVC for remoting screen content from Horizon Agent to Horizon Client. As a result, both Horizon Agent and Horizon Client can use GPU hardware acceleration over a wide variety of system hardware.

Horizon Agent supports the codecs listed in the following table.

Table 1. Codecs Supported by Horizon Agent
Hardware-encoded codecs
  • HEVC
  • H.264 (hardware-encoded)
Software-encoded codecs
  • BlastCodec
  • H.264 (software-encoded)
  • Adaptive

Horizon Client supports the codecs listed in the following table.

Table 2. Codecs Supported by Horizon Client
Hardware-decoded codecs
  • H.264 (supported by most hardware, usually with support for standard-definition color only)
  • HEVC
Software-decoded codecs
  • BlastCodec
  • H.264 (including high-definition color)
  • Adaptive

Summary of Codec Options

  • BlastCodec is considered a good general-purpose codec that offers bandwidth efficiency, especially for office workloads. This codec includes high-definition color by design.
  • H.264 has optimized capabilities for playing multimedia content and is widely supported by most client hardware. Low-powered thin clients may receive better frame rates with this codec. You can also enable high-definition color, or high color accuracy, for a sharper display of color in text and graphics. However, this option might require the use of a software decoder, resulting in increased CPU usage on the client machine.
  • HEVC (High Efficiency Video Coding) is also optimized for multimedia content and has more specialized hardware requirements.
  • Adaptive is the original software codec supported by VMware Blast and has since been superseded by BlastCodec. Horizon Client uses Adaptive as a fallback when all other codecs (such as BlastCodec and H.264) are not supported.

High-definition color uses the YUV 4:4:4 color matrix, which offers four times the color resolution of the standard-definition YUV 4:2:0 matrix. High-definition color is not supported on ARM processors.

The maximum resolution that is supported depends on the capability of the graphical processing unit (GPU) on the client. A GPU that can support 4K resolution for JPEG/PNG might not support 4K resolution for H.264.

If your environment uses a network proxy server, you can specify whether to allow VMware Blast connections through the default proxy server configured in your operating system.

For an SSL proxy server, you also need to configure certificate checking for secondary connections through the SSL proxy server. For more information, see Setting the Certificate Checking Mode in Horizon Client.

Prerequisites

Verify that your system environment meets the following requirements.

  • Depending on the Horizon Agent version that is installed, a Horizon administrator can use agent-side group policy settings to activate or deactivate VMware Blast features, including high-definition color for H.264. For information, see "VMware Blast Policy Settings" in the Horizon Remote Desktop Features and GPOs document.
  • To use high-definition color, Horizon Agent 2203 or later must be installed.
  • The client device has a GPU that supports the decoding method you want to use.

Administrators can configure the VMware Blast HEVC and proxy server options so that end users cannot change them by setting keys in the /Library/Preferences/com.vmware.horizon.plist file on the Mac client. To configure the HEVC option, set the Allow HEVC key to one of the following values.

  • 1 activates High Efficiency Video Decoding (HEVC)
  • 0 deactivates High Efficiency Video Decoding (HEVC)

An administrator can configure the proxy server option by setting the Blast via Proxy Mode key to one of the following values.

  • 1 activates Allow Blast connections to use operating system proxy settings
  • 0 deactivates Allow Blast connections to use operating system proxy settings

Procedure

You can configure VMware Blast options before or after you connect to a server.

  1. Start Horizon Client.
  2. Select VMware Horizon Client > Preferences from the menu bar and click VMware Blast.
  3. Configure H.264 decoding options.
    1. To allow H.264 decoding, select the Allow H.264 decoding check box.

      When this option is selected, Horizon Client allows Horizon Agent to use H.264. This option is selected by default.

      Most client hardware supports GPU-accelerated decoding for H.264 with standard-definition color.

    2. For improved sharpness of color text and graphics when H.264 decoding is allowed, select the Allow high color accuracy (reduces battery life and performance) check box.

      When this option is selected, Horizon Client allows the use of H.264 4.4.4 decoding. Selecting this option might reduce battery life and performance. This option is deselected by default.

  4. To allow HEVC decoding, select the Allow High Efficiency Video Decoding (HEVC) check box.

    When this option is selected, Horizon Client allows Horizon Agent to use HEVC. HEVC requires having GPU hardware support for HEVC on both the client and agent machines.

    This option is selected by default.

  5. To allow VMware Blast connections through a proxy server, select the Allow Blast connections to use operating system proxy settings check box.
  6. To turn off the display of warning messages when the network is unstable, select the Disable network state display check box.

Changes take effect the next time a user connects to a remote desktop or published application and selects the VMware Blast display protocol. Your changes do not affect existing VMware Blast sessions.

Preference Order for Codecs

When initiating a VMware Blast connection, Horizon Client and Horizon Agent negotiate to determine which codec to use. During this negotiation process:

  1. Horizon Client presents a list of the codecs that it both supports (through client machine hardware) and allows (through Configure VMware Blast settings).
  2. Horizon Agent receives the client list and applies it to the list of codecs that the agent both supports (through agent machine hardware) and allows (through agent configuration settings). The agent list is filtered to include only those codecs present in the client list.
  3. Based on the filtered agent list, Horizon Agent gives preference to hardware codecs and falls back to software codecs if hardware codecs are not available. The preference order is summarized later on this page.
    Note: Agent virtual machines typically don't support H.264 and HEVC hardware codecs, since these codecs require specialized GPU hardware on the hypervisor host. As a result, Horizon Agent typically uses software encoding, with BlastCodec as the default.

Horizon Agent uses a hardware codec when your system environment meets all the following criteria:

  • The agent machine supports the hardware codec.
  • For HEVC, the client machine must have a GPU that supports the hardware codec.
  • VMware Blast options on the client are configured to allow use of the decoding method.

Horizon Agent chooses a hardware codec according to the following order of preference:

  1. H.264 4:4:4 (high-definition color)
  2. HEVC 4:2:0 (standard-definition color)
  3. H.264 4:2:0 (standard-definition color)

If hardware codecs are not supported on both the client and agent machines, Horizon Agent chooses a software codec according to the following order of preference and the decoding methods allowed on the client:

  1. BlastCodec (high-definition color)
  2. H.264 4:4:4 (high-definition color)
  3. H.264 4:2:0 (standard-definition color)
  4. Adaptive (high-definition color)