Horizon Client for Linux provdes a Configure 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, HEVC, and AV1 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)
  • AV1
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
  • AV1
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 the High Definition Color option 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. You have the option of allowing high-definition color for this codec.
  • AV1 (AOMedia Video 1) is a royalty-free codec designed for video transmissions. Horizon Client does not currently support high-definition color for this codec.
  • 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 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 the agent machine meets the following requirements.

  • Horizon Agent 2203 or later must be installed to support High Definition Color for H.264 or HEVC. 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.
  • 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 and HEVC. For information, see "VMware Blast Policy Settings" in the Horizon Remote Desktop Features and GPOs document.
Verify that the client device has a GPU that supports the decoding method you want to use. Also, the device must meet the following requirements:
  • H.264 decoding is supported on AMD, NVIDIA, and Intel GPUs.
    • To use H.264 decoding with an AMD or NVIDIA GPU, install the graphics library OpenGL 3.2 or later.
    • To use H.264 decoding with an NVIDIA GPU, install VDPAU (Video Decode and Presentation API for UNIX). VDPAU is no longer included with the latest NVIDIA driver and must be installed separately.
    • To use H.264 with an Intel GPU, the Intel VA-API driver and the GLX VA-API libraries are required. Running the command vainfo shows the H.264 profiles.
  • To use HEVC 4:4:4 decoding with an Intel GPU, a Gen 10 (Ice Lake) or later CPU is required.
  • AV1 decoding is supported on NVIDIA and Intel GPUs.

Procedure

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

  1. Start Horizon Client.
  2. Select File > Configure VMware Blast from the menu bar.

    The Blast Configuration window has controls for specifying decoding options.
  3. To allow BlastCodec software decoding, select the Allow BlastCodec Decoding check box.

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

    Note: Only Horizon Agent versions 2006 and later support BlastCodec. For Horizon Agent version 7.13 or earlier, another codec is used. For more information, see Preference Order for Codecs.
  4. 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 Definition Color (may reduce 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.

  5. Configure HEVC decoding options.
    1. To allow HEVC decoding, select the Allow HEVC decoding 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.

    2. For improved sharpness of color text and graphics when HEVC decoding is allowed, select the Allow High Definition Color (may reduce performance) check box.

      When this option is selected, Horizon Client allows the use of HEVC 4.4.4 decoding. This option is deselected by default.

    Note: High-definition color provides sharper displays of color text and graphics (using a YUV 4:4:4 color matrix instead of the more commonly used YUV 4:2:0). However, some GPUs exhibit poor encode/decode performance for HEVC with high-definition color enabled. If you encounter such a performance issue, such as a noticeable drop in frame rate, disallow high-definition color by deselecting this option.
  6. To allow AV1 decoding, select the Allow AV1 decoding check box.

    AV1 requires having GPU hardware support for AV1 on both the client and agent machines.

  7. To allow VMware Blast connections through a proxy server, select the Allow Blast connections to use operating system proxy settings check box.
  8. Click OK to save your changes.

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, HEVC, and AV1 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 and AV1, 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. HEVC 4:4:4 (high-definition color)
  2. H.264 4:4:4 (high-definition color)
  3. AV1 4:2:0 (standard-definition color)
  4. HEVC 4:2:0 (standard-definition color)
  5. 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)