ThisCalculator

Everyday

SRT Streaming: Benefits, Limits & How to Use

Updated · Standard formula, shown below

Max network jitter tolerated 60 ms
Approx. data overhead
10.00 %
Result
Video bitrate
5 Mbps
You entered
Latency (ms)
120 ms
You entered

This article explains SRT (Secure Reliable Transport), an open-source video streaming protocol designed for delivering high-quality video over unpredictable networks like the public internet. You will learn what SRT is, its key benefits and limitations, how it compares to other protocols, and the practical steps for using it in your own streaming setup.

Formula

The calculator above estimates two practical values for an SRT stream. The first output, max network jitter tolerated, is roughly half the configured latency (in milliseconds). This is a rule of thumb: SRT’s buffer must be large enough to hold packets that arrive late due to jitter, and the latency setting is the total buffer size. So, if you set a latency of 120 ms, the stream can absorb jitter spikes of about 60 ms.

The second output, approximate data overhead, is a fixed estimate of 10%. SRT adds a small header to each packet and uses an ARQ (Automatic Repeat reQuest) mechanism that retransmits lost packets. In practice, overhead varies with packet loss and retransmission rates, but 10% is a reasonable planning figure for a typical stream with low packet loss.

Worked Example

Using the default values from the calculator:

  • Video bitrate = 5 Mbps
  • Latency = 120 ms

First, compute the max jitter tolerated:

120 ms ÷ 2 = 60 ms

So the stream can handle jitter up to about 60 ms.

Next, the data overhead:

5 Mbps × 0.10 = 0.5 Mbps

Thus, the total network bandwidth needed is about 5.5 Mbps. The calculator shows the overhead as 10% and the jitter tolerance as 60 ms.

What is SRT and Where Did It Come From?

SRT stands for Secure Reliable Transport. It is an open-source video transport protocol developed by Haivision, first released in 2017. The protocol was designed to solve a common problem: sending high-quality, low-latency video over the public internet, which is inherently unreliable. Traditional protocols like RTMP were never built for real-time, interactive streaming over lossy networks. SRT adds error correction and retransmission while keeping latency low, making it a popular choice for live sports, news, and remote production.

SRT is now managed by the SRT Alliance, which includes many companies in the broadcast and streaming industries. It is royalty-free and open source, meaning anyone can use it without licensing fees.

Key Benefits of SRT

SRT offers several advantages over older streaming protocols:

  • Reliability over poor networks: SRT uses automatic repeat request (ARQ) to retransmit lost packets, so the video quality remains stable even with up to 50% packet loss in some cases.
  • Low latency: You can achieve end-to-end latency of 100-200 ms, which is much lower than RTMP’s typical 5-20 seconds.
  • Security: SRT includes AES-128/256 encryption by default, protecting your stream from interception.
  • Firewall traversal: SRT uses a single UDP port and can work through NAT and firewalls, simplifying network setup.
  • Open and interoperable: Since it is open source, many encoders, servers, and players support SRT out of the box.

Limitations and Trade-offs

Despite its strengths, SRT has some drawbacks you should know:

  • Requires a stable connection: ARQ retransmissions use extra bandwidth. If your uplink is already saturated, retransmissions can cause congestion and actually increase latency.
  • Not for live streaming to end viewers: SRT is primarily a contribution/distribution protocol, not a playback protocol. Viewers typically watch via HLS or WebRTC, not SRT directly.
  • Latency is not as low as WebRTC: WebRTC can achieve sub-100 ms latency, while SRT typically runs 100-200 ms. For interactive applications like video calls, WebRTC is better.
  • Configuration complexity: You need to set latency, packet size, and bitrate correctly. Wrong settings can cause buffering or dropped frames.

How to Use SRT: Step-by-Step

To use SRT, you need a sender (encoder) and a receiver (server or decoder). Here is a general workflow:

  1. Choose your encoder: Many hardware encoders (e.g., from Teradek, LiveU) and software encoders (OBS Studio, vMix) support SRT. Make sure your encoder has an SRT output option.
  2. Set up a receiver: You can use an SRT-capable media server like SRT Live Server or a cloud service that supports SRT ingestion (e.g., some CDNs). Alternatively, use a decoder like VLC (which can receive SRT streams).
  3. Configure the SRT URL: The SRT URL format is srt://IP:PORT?mode=caller&latency=120. The mode can be caller (initiates connection) or listener (waits for connection). The latency parameter sets the buffer in milliseconds.
  4. Set your bitrate: Choose a bitrate that your network can sustain. For 1080p, 5-8 Mbps is typical. Use the calculator above to estimate overhead.
  5. Test your connection: Before a live event, do a test stream to check for packet loss and adjust latency if needed.
  6. Monitor and adjust: Watch the receiver’s statistics for dropped packets or buffer underruns. Increase latency if you see jitter, or reduce bitrate if you see congestion.

SRT vs. RTMP vs. WebRTC

Here’s a quick comparison to help you choose the right protocol:

  • SRT: Best for high-quality contribution links over unreliable networks. Latency 100-200 ms. Uses UDP.
  • RTMP: Older, TCP-based, works well on stable connections but has high latency (5-20 s) and no built-in encryption. Still common for pushing to platforms like YouTube or Twitch.
  • WebRTC: Ultra-low latency (under 100 ms) for interactive video, but requires more complex infrastructure and often uses more bandwidth. Ideal for video calls and live interactive events.

In summary, if you need low latency and reliability over the internet, SRT is a strong choice. If you need sub-100 ms interactivity, WebRTC is better. If you are streaming to a large audience via a CDN, you might use SRT to get the video to the CDN, then HLS for delivery.

Common Mistakes and Troubleshooting

Here are frequent pitfalls and how to fix them:

  • Setting latency too low: If the latency is lower than the network jitter, you will get buffer underruns and video freezing. Increase latency to 200-300 ms for high-jitter networks.
  • Ignoring bandwidth overhead: SRT retransmissions can add 10-20% overhead. Ensure your uplink has headroom above your bitrate.
  • Using wrong mode: The caller/listener modes must match. If one side is caller and the other is also caller, the connection fails. Ensure one is listener.
  • Firewall blocking UDP: SRT uses UDP, which some firewalls block. Open the specific UDP port you are using.
  • Not using encryption: SRT supports encryption via passphrase. Always enable it to protect your stream.

Frequently Asked Questions

Is SRT free to use?

Yes, SRT is open source and royalty-free. You can use it in commercial products without paying licensing fees.

Can I use SRT for live streaming to YouTube or Facebook?

Most major platforms do not accept SRT directly for ingestion. You typically need to convert SRT to RTMP or use a service that bridges the protocols. Some cloud services accept SRT and then transcode to HLS.

What is the maximum latency I can set in SRT?

There is no hard limit, but practical values range from 20 ms to several seconds. Higher latency increases buffer size, which helps absorb jitter but adds delay. For live events, 120-500 ms is common.

Does SRT work with VLC?

Yes, VLC can receive SRT streams. Use the URL srt://IP:PORT in VLC’s network stream option. VLC also supports sending SRT streams in recent versions.

How does SRT handle packet loss?

SRT uses ARQ to retransmit lost packets. The receiver sends acknowledgments, and the sender resends missing data. This ensures the stream arrives intact, but it increases bandwidth usage. For extreme loss, SRT also has forward error correction (FEC) options.

Is SRT better than RTMP for live streaming?

For most modern use cases, yes. SRT offers lower latency, built-in encryption, and better resilience to packet loss. RTMP is still widely supported by platforms, but it is older and lacks these features.

Related

Formula used
in b | Video bitrate | Mbps | 5 | 0
in l | Latency (ms) | ms | 120 | 0
out t | Max network jitter tolerated | ms | l / 2 | 0
out p | Approx. data overhead | % | 10 | 2

Each line is one input (in, sel, list) or one result (out: label, unit, formula, decimals). How the calculators work

Method: the standard formula for this calculation, rounded as each result states. See how the calculators work or report an error.