NoMachine Support

Your questions answered

Knowledge Base

Searching in: Articles & FAQs
Filter the search results
Applies to:
Last update:
Searching in: Articles & FAQs
ID: AR10K00706
Applies to: FAQs
Added on: 2013-10-07
Last update: 2019-01-08
What do I need to do to allow NoMachine software to use H.264?

NoMachine provides unprecedented performance when streaming heavy graphical content such as videos and visualization software over any network. Additional acceleration can be obtained using H.264. Our benchmark tests have shown that up to a 30% increase in performance is possible when H.264 is used.

NoMachine supports GPU-accelerated (hardware) and software H.264 encoding/decoding. H.264 is used by default when the following requirements are all met:

for sessions run by NoMachine client
- the hardware (HW) or software (SW) H.264 encoder is available on server-side
- the HW or SW H.264 decoder is present on client-side and provided no other encoding has been selected explicitly by the administrator.

If neither the server nor any of the clients support H.264, VP8 will be used as a fallback.

for web sessions (from v. 6)
- H.264 hardware or software encoding is available on the remote host where NoMachine sessions are run.
- The browser supports WebRTC/HTML5 and H.264.
- support for WebRTC is enabled on the NoMachine Server.

If neither the server nor any of the clients support H.264, VP8 will be used as a fallback.

 
Specific cases  
1. NoMachine and H.264 hardware acceleration  
     1.1. On server side (GPU encoding)  
     1.2. On client side (GPU decoding)  
2. NoMachine and H.264 software acceleration  
     2.1. On the server side, NoMachine free  
     2.2. On the server side, subscribed server products  
     2.3. On the server side, server packages for evaluation  
     2.4. On the client side, NoMachine Enterprise Client  
3. What is the NoMachine AVC Pack?  
     3.1. When do I need to install a NoMachine AVC pack on server side?  
     3.2. When do I need to install a NoMachine AVC pack on the user's computer?  
     3.3. How to purchase and install the AVC pack  
4. Some typical scenarios  
    4.1. From Windows/Mac to Linux  
    4.2. From Linux to Linux  
    4.3. From Linux to Windows or Mac  

1. NoMachine and H.264 hardware acceleration

NoMachine supports H.264 hardware acceleration for these types of sessions:
(i) Connections to the remote physical desktop.
(ii) Linux virtual desktops without activating X11 vector graphics mode.

H.264 HW acceleration will be soon available also for virtual desktops in X11 vector graphics mode: https://www.nomachine.com/FR11O03550
H.264 HW acceleration will also be applied to multimedia content in custom sessions.

1.1. On server side (GPU encoding)

NoMachine supports H.264 hardware encoding provided by graphics cards (GPUs) with Nvidia Kepler microarchitecture onward.

From v. 6, also Intel Quick Sync video cards on Windows and Linux are supported. On Linux, it's necessary to apply a manual configuration as explained here: https://www.nomachine.com/AR09O00938

Support for hardware H.264 encoder on AMD cards will be soon available (https://www.nomachine.com/FR01P03578).

1.2. On client side (GPU decoding)

NoMachine software on the user's computer (i.e. NoMachine used as a client or Enterprise Client) supports the H.264 hardware decoding on Windows and Mac hosts with hardware accelerated video cards (GPUs). No further action is required.

We plan to extend support for H.264 HW decoding also to iOS and Android tablets: https://www.nomachine.com/FR12M02992 and https://www.nomachine.com/FR12M02991

2. NoMachine and H.264 software acceleration

H.264 software acceleration can be used when the server or client doesn't have the necessary hardware requirements to use HW acceleration.

NoMachine supports H.264 software acceleration for these types of sessions:
(i) Connections to the remote physical desktop.
(ii) Linux virtual desktops without activating X11 vector graphics mode.
(iii) Linux virtual desktops in X11 vector graphics mode.
(iv) Multimedia content in custom sessions.

In the case of virtual desktops in X11 vector graphics mode and custom sessions, video streaming techniques, and therefore H.264 SW acceleration, are applied only to multimedia contents. The X11 vector graphics mode is not available for web sessions.

2.1. On the server side, NoMachine free

The NoMachine free version for personal use does not include the H.264 libraries for software encoding.

In this case you may either compile and install the libx264 library (see: https://www.nomachine.com/AR10K00695 ) or adopt the NoMachine AVC pack.

2.2. On the server side, subscribed server products

All server products distributed under a customer's subscription (e.g., NoMachine Workstation, Terminal Server and so on) include the MPEG-LA H.264 software encoding/decoding libraries. H.264 software encoding is therefore fully supported. No further action is necessary, but please be sure to download the server package from your Customer Area.

2.3. On the server side, server packages for evaluation

Server packages for evaluation don't include the H.264 libraries. To enable H.264 software encoding, it's necessary to compile and install the libx264 library from the NoMachine open source components. See: https://www.nomachine.com/AR10K00695 for instructions

2.4. On the client side, NoMachine Enterprise Client

NoMachine Enterprise Client doesn't include the H.264 libraries for software encoding.
You may either install FFMPEG (see: https://www.nomachine.com/AR10K00696 ) or adopt the NoMachine AVC pack.

3. What is the NoMachine AVC Pack?

The AVC Pack is an add-on software for the NoMachine (free) and NoMachine Enterprise Client packages.

The AVC Pack is not available for NoMachine servers for evaluation.

Once installed, NoMachine's AVC Pack lets the user leverage the H.264 video coding format in NoMachine sessions. The AVC pack provides the necessary encoder/decoder libraries.

Whether you will need to install it will depend on the graphics card and on what operating system is installed. When the server or client doesn't have the necessary requirements to use HW acceleration, you can install the AVC pack to use H.264 software acceleration.

3.1. When do I need to install a NoMachine AVC pack on server side?

You need it when you have installed NoMachine free and the host machine:
- doesn't have a GPU or
- the microarchitecture of the graphics card is not supported or
- the HW encoding is not supported by system drivers.

As an alternative to the AVC pack, you can compile and install the libx264 library from the NoMachine open source components. See: https://www.nomachine.com/AR10K00695

3.2. When do I need to install a NoMachine AVC pack on the user's computer?

You will need to install a NoMachine AVC Pack on the user's computer when the computer is Windows or Mac but doesn't have a graphics card that supports hardware accelerated H.264 decoding.

If the user's computer is Linux (or Mac/Windows but the graphics card doesn't support HW acceleration) verify if the H.264 software decoder libraries (libavcodec and libavutil) are already installed on the system.

If they are installed, no further action should be necessary. Otherwise you will need to install NoMachine AVC Pack to provide the necessary H.264 SW decoding libraries. As an alternative, you can install FFMPEG as explained here: https://www.nomachine.com/AR10K00696

3.3. How to purchase and install the AVC pack

The AVC Pack is not available as evaluation. If you would like to test performance of the session via H.264 encoding, installing the libraries and codecs by hand is possible.

The AVC Pack is available for purchase in the online store. Once purchased, you should access your customer area to download the AVC package for your operating system. Any updates will be made available in the Customer Area.

Instructions to install NoMachine AVC Pack and activate the license are available at: https://www.nomachine.com/DT06O00146

For v. 5, please use: https://www.nomachine.com/DT10M00105

4. Some typical scenarios

4.1. From Windows/Mac to Linux

i) You have the free NoMachine product installed on both local (Windows client) and remote (Linux server) sides and want to take advantage of H.264 decoding/encoding.

You will need to purchase and install 1 x AVC Pack: one for the remote NoMachine Linux computer.

Since most modern Windows and Mac computers have hardware accelerated video cards (GPUs), it won't be necessary to install an AVC pack. NoMachine will be able to interface with the system's own H.264 decoder out of-the-box.

ii) You have Enterprise Client for Windows installed locally and would like to connect to the company's NoMachine Workstation at the office.

You will need 0 x AVC Pack.

The Production Version of Workstation already ships the necessary encoding libraries and for decoding, NoMachine can automatically use the system's H.264 capabilities. On the client side the system's own decoding capabilities (HW) are used.

4.2. From Linux to Linux

i) You have the free NoMachine product installed on the remote Linux computer and you are connecting from an Enterprise Client on Linux.

You will need to purchase and install 2 x AVC Packs.

Should the Enterprise Client computer have FFMPEG libraries available (used for decoding), you won't need the AVC pack. Similarly, if the Linux server-side OS had libx264 libraries readily available (used for encoding), you won't need an AVC Pack.

ii) You have the Enterprise Client or NoMachine installed on the local computer and you are connecting to the company's NoMachine Terminal Server. You would like to use H.264 decoding/encoding for your connection to the corporate remote host.

You will need to purchase and install 1 x AVC Pack for the computer that you connect from provided of course that you don't have
FFMPEG libraries already installed as mentioned earlier.

4.3. From Linux to Windows or Mac

i) You have NoMachine or Enterprise Client on your local Linux computer which you use to connect to your personal NoMachine Mac server. You would like to connect using H.264 decoding/encoding.

You will need to purchase and install 2 x AVC Packs.

One for the Linux client to enable H.264 decoding capabilities (if FFMPEG libraries are not already installed), and one for the Mac in order to permit NoMachine to use the H.264 SW encoding.