# Using NDI|HX Outputs

{% hint style="warning" %}
NDI|HX output support requires a paid license for use beyond 30 minutes. NDI|HX output is currently supported on Windows (NVIDIA NVENC hardware and OpenH264 software) and Linux (OpenH264 software).
{% endhint %}

Multiview for NDI can produce multiview outputs using the NDI High Bandwidth (SpeedHQ) or H.264/HEVC (NDI|HX) codecs on supported platforms and hardware.&#x20;

## Codecs Supported

### SpeedHQ (NDI High Bandwidth)

The default output codec for Multiview for NDI is the SpeedHQ, or NDI High Bandwidth codec.

### H.264/H.265 (NDI|HX)

As of the latest published version, the following encoders are supported by Multiview for NDI.

| Platform | Codec         | Encoder Type              | Notes                                                                                                    |
| -------- | ------------- | ------------------------- | -------------------------------------------------------------------------------------------------------- |
| Windows  | H.264 or HEVC | Hardware - NVIDIA NVENC   | Requires a compatible NVIDIA card - anything newer than GTX 980 should work fine. Uses API version 12.0. |
| Windows  | H.264         | Software - Cisco OpenH264 | Included as a reference/test. Slow and requires a lot of resources.                                      |
| Linux    | H.264         | Software - Cisco OpenH264 | Included as a reference/test. Slow and requires a lot of resources.                                      |

## Configuring a Multiview Output for NDI|HX Output

## Web UI

<figure><img src="/files/ABpyVvP9f9IMU1pWshVD" alt=""><figcaption></figcaption></figure>

### Set the Encoder Type in the Web UI

1. Select the multiview output you want to edit.
2. Click *Edit Layout*
3. Scroll to the bottom of the page and you will see a section called **Encoder Settings**
4. Select the encoder you wish to use.
5. If the encoder selected is an NDI|HX encoder, choose your bitrate.
6. Click *Save* next to the bitrate fiel&#x64;*.*

The multiview will restart its output using the encoder you have selected.

{% hint style="warning" %}
The OpenH264 encoder uses software (CPU-based) encoding. It is known to be slow and is only included as a demonstration.
{% endhint %}

## HTTP API

### Change Encoder using the HTTP API

Using the API, compose a `GET` request to `http://[host]:8901/viewer/{viewerNum}/encoder/{typeCode}/bps/{bitrateBps}`.

| Encoder Type                 | TypeCode    |
| ---------------------------- | ----------- |
| NVIDIA - NVENC, H.264        | `nvench264` |
| NVIDIA - NVENC, HEVC (H.265) | `nvenchevc` |
| OpenH264 (H.264)             | `openh264`  |
| SpeedHQ (NDI Full Bandwidth) | `speedhq`   |

For example, the following will change the first viewer's encoder to openh264 with a bitrate of 10 megabits per second (10,000,000 bps):

`http://localhost:8901/viewer/0/encoder/openh264/bitrate/10000`

{% hint style="info" %}
When choosing the SpeedHQ codec, bitrate can take on any value as it is ignored.
{% endhint %}

## Technical Notes

* H.264 and H.265 encoders from Multiview for NDI will *only* send intra-frames (i-frames). P-frames and b-frames are not used.
* The OpenH264 encoder from Cisco uses software (CPU) to encode h.264 frames. As it tends to be much slower than hardware, it is not recommended to use the OpenH264 encoder.&#x20;


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://tractus.gitbook.io/tractus-tools-for-ndi/getting-started/using-ndi-or-hx-outputs.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
