---
title: Zixi Latency Negotiation
slug: product-features/zixi-latency-negotiation
docTags: 
createdAt: 2025-12-10T19:26:46.214Z
---

# Overview

Video latency refers to the time elapsed between the source capture and the player's rendering. Zixi’s software platform provides a flexible approach to latency management across origin, Broadcaster, and destination components.

When setting latency values, consider the tradeoffs between low delay, error recovery, and network delivery.

# Platform latency

The following describes latency negotiation between client and server (Zixi Broadcaster).

## Push mode&#x20;

In push mode, the sender actively pushes a video stream to a destination.

![](https://api.archbee.com/api/optimize/mzxtTQEvCNIdUNgF2kuwJ/P8-QcmDoizNmSqxxp1iTm_image.png)

Diagram:

- The client can be associated with:
  - Feeder&#x20;
  - ZEC as feeder&#x20;
  - Broadcaster as feeder&#x20;
  - Embedded feeder SDK
- Latency is **required** for the client PUSH output.
- Latency is **optional** for the Broadcaster (server).
- Broadcaster negotiation:&#x20;
  - If latency **is not set** in the Broadcaster, use the client latency.
  - If latency **is set** in the Broadcaster, override the client latency.

## Pull mode

In Pull mode, the receiver initiates the connection and requests the stream from the Broadcaster.

::Image[]{src="https://api.archbee.com/api/optimize/mzxtTQEvCNIdUNgF2kuwJ/vZeKqmGk0rS_ciHtDgpWV_image.png" size="90" width="870" height="472" position="center" darkWidth="870" darkHeight="472" showCaption="false"}

Diagram:

- The client can be associated with:
  - Receiver
  - ZEC as receiver
  - Broadcaster as receiver
  - Embedded receiver SDK&#x20;
- Latency is **required** for the client PULL input.
- Latency is **optional** for the Broadcaster (server).
- Broadcaster negotiation:
  - If latency **is not set** in the Broadcaster, use the client latency.
  - If latency **is set** in the Broadcaster, override the client latency.

## Platform latency precedence

For the PUSH and PULL mode scenarios above, the latency precedence can be summarized as follows:

1. Broadcaster latency, if set&#x20;
2. Client latency

# ZEN Master Cluster Redirection Rules

In addition to the platform latency negotiation discussed above, Zixi provides a ZEN Master-only feature called Cluster Redirection Rules. This allows you to manage Inter-Cluster Sources, Auto-Pulls, and latency overrides.

## Pull mode

Cluster Redirection Rules only apply to Pull mode.

![](https://api.archbee.com/api/optimize/mzxtTQEvCNIdUNgF2kuwJ/kuHpvZXAQiSyNiUCFHesH_image.png)

Diagram:

- The client can be associated with:
  - Receiver&#x20;
  - ZEC as receiver
  - Broadcaster as receiver&#x20;
  - Embedded receiver SDK
- Latency is **required** for the client PULL input.
- Latency is **optional** for Cluster Redirection Rules.
- Latency is **optional** for the Broadcaster (server).
- ZEN Master negotiation:
  - If latency **is set** for Cluster Redirection Rules, then override all other values.
- Broadcaster negotiation:
  - If latency **is not set** in the Broadcaster, use the client latency.
  - If latency **is set** in the Broadcaster, override the client latency.

## Setting Cluster Redirection Rules&#x20;

To apply redirection rules to a Broadcaster Cluster, do the following:

::::WorkflowBlock
:::WorkflowBlockItem
In the left navigation, select **Broadcasters**.
:::

:::WorkflowBlockItem
From the **Broadcaster Clusters** list, select a Cluster.
:::

:::WorkflowBlockItem
Select **Redirection Rules** and then **+Add Rule**.

::Image[]{src="https://api.archbee.com/api/optimize/mzxtTQEvCNIdUNgF2kuwJ/GpTOGnNWnFWdXXBXtf1UU_.blob" size="90" width="936" height="300" position="center" darkWidth="936" darkHeight="300" showCaption="false"}
:::

:::WorkflowBlockItem
Complete the form and select **Save**.

::Image[]{src="https://api.archbee.com/api/optimize/mzxtTQEvCNIdUNgF2kuwJ/NaLJFjJyNNd842U_ECb9x_.blob" size="50" width="394" height="489" position="center" darkWidth="394" darkHeight="489" showCaption="false"}
:::
::::

## ZEN Master latency precedence&#x20;

With ZEN Master, latency has an additional consideration:

1. Cluster Redirection Rules, if set
2. Broadcaster latency, if set&#x20;
3. Client latency &#x20;

# Dynamic latency

In addition to setting latency values, you can also enable Zixi’s Dynamic Latency, which adjusts latency dynamically in response to changing network conditions. The latency values that you set become the upper bounds for dynamic adjustment.

Note that Zixi limits the latency change rate to make clock frequency drift within specs of mpeg-ts.

To enable Dynamic latency, do one of the following:

- In the Broadcaster input settings, select **Minimize Latency**.

::Image[]{src="https://api.archbee.com/api/optimize/mzxtTQEvCNIdUNgF2kuwJ/kZ0YPYkC847ku6aWE5_h6_.blob" size="60" width="528" height="307" position="center" showCaption="false"}

- In ZEN Master, when creating/updating a Source, select **Minimize Latency**.

::Image[]{src="https://api.archbee.com/api/optimize/mzxtTQEvCNIdUNgF2kuwJ/hrhEup0rYQ5bRWIAzHJ6S_.blob" size="90" width="936" height="399" position="center" showCaption="false"}

For details about Dynamic Latency, see the [Latency Considerations](docId\:b5ijrtxUIcWxU7rCmdHza) document.

# Trade-offs&#x20;

Zixi offers a three-way trade-off between:

- Latency
- Resiliency (error recovery)
- Overhead (FEC/ARQ)

Lower latency reduces recovery robustness. Higher latency improves resiliency.

# Summary

Latency can impact event success. Zixi provides a comprehensive solution that masters network dynamics to guarantee low-latency, reliable delivery at any scale.

# Notes

Here are some additional notes:&#x20;

- For sufficient error recovery, Zixi recommends setting the latency to at least 3 to 5 times larger than the \[RTT + Jitter]. You may need to adjust latency depending on the ISP network, as conditions can change due to network overload, a new network path, or additional hops.
- Zixi telemetry displays actual latency, not just configured values.

