You set the SRT latency in your app, not in the studio. As a guide we recommend about 200 ms on fiber and good Wi-Fi, 500 to 1000 ms on a good mobile network and 1500 to 2000 ms on a bad one.

More latency means more delay and fewer picture errors. Less latency means a more direct signal that shows errors sooner on an unsteady connection.

What the value does

SRT transmits over UDP. If a packet is lost on the way, the receiver asks for it once more. That takes time: the packet has to be recognized as missing, requested again and sent once more. The latency is the time window SRT gets for that. The receiver holds everything back for that long and then passes it on in the right order.

If a packet arrives again within the window, nobody notices anything. If it comes too late, it is missing. That shows as a picture error until the next keyframe and as a gap in the sound.

Who determines the value

Your studio receives with a buffer of 200 ms. If your app asks for more, the larger value applies. That means:

  • If the app says nothing, or less than 200 ms, it is 200 ms.
  • If the app says 1000 ms, it is 1000 ms.

The studio's side cannot be changed. Everything you want to set, you set in the app.

Guide values

Connection Latency Note
Fiber, cable, good Wi-Fi about 200 ms Hardly any losses, the small window is enough.
Good mobile data (5G, strong LTE) 500–1000 ms Radio loses packets in bursts. The window has to be longer than such a burst.
Bad mobile data, a lot of movement, full cells 1500–2000 ms Much time for retransmissions, in exchange for clearly more delay.

These are our recommendations, no fixed limits. The right number depends on your link and can only be found where you actually send from.

Mind the unit

The apps do not all ask in the same unit:

  • Most apps expect milliseconds: 1000 stands for one second.
  • ffmpeg expects microseconds in the SRT address: latency=200000 are 200 ms, latency=1000000 is one second.

A value entered in the wrong unit is off by a factor of 1000. If the delay after a change does not match your expectation at all, check that first.

How to find your value

  1. Begin with the guide value for your connection.
  2. Send for a few minutes and open the “Eingänge” (inputs) tab in the studio. The link quality display shows for every input the bitrate, the packets that arrived as a retransmission, and the packets that never arrived. All further counters of an input are on the “Stats” tab.
  3. Retransmitted packets are no problem: SRT repaired them in time. That is exactly what the latency is for.
  4. If the number of packets that never arrived rises, the window is not enough. Raise the latency in the app step by step, for example by 500 ms, and watch again.
  5. If the losses stay in spite of a high latency, the bitrate is too high for the link. Then only lowering the bitrate helps. See The right encoder settings.

After a change the app usually has to reconnect for the new value to apply.

What the latency costs

The SRT latency is added to the total delay of your stream. For the viewers one second more is hardly noticed, because the platforms add several seconds themselves. For you on the desk it means that you see a picture that much later and a cut takes effect that much later.

If every source has a different latency, their pictures also arrive in the studio at different times. When two cameras show the same thing happening, that shows at the cut. Give such cameras the same value where possible.

Read on