Learn › SRT Protocol
SRT Protocol · 5 min read

How do I stream with SRT (Secure Reliable Transport)?

SRT (Secure Reliable Transport) is a modern video streaming protocol designed to deliver low-latency, secure, and reliable video over unstable networks. Unlike RTMP, which can drop frames or disconnect during packet loss, SRT uses packet recovery to keep the stream smooth. Here is how to configure OBS to publish over SRT.

Typical live latency tiers
Ultra-low / WebRTCunder 1 secReal-time interaction — auctions, betting, two-way Q&A.
Low-latency3–10 secLive chat that keeps up — most creator and gaming streams.
Standard15–30 secMost stable and compatible — large broadcasts and events.
Lower latency, less bufferHigher latency, more stable

Why choose SRT over RTMP?

RTMP has been the standard protocol for live ingestion for years, but it lacks modern error recovery. If your upload speed fluctuates or you experience minor packet loss (common on Wi-Fi or mobile data), RTMP will drop frames, stutter, or disconnect.

SRT uses ARQ (Automatic Repeat reQuest) packet recovery. If a packet is lost, SRT requests a retransmission immediately. It also supports encryption and latency tuning, making it ideal for remote broadcasts, mobile streams, and contribution links.

Configure OBS to stream over SRT

OBS Studio natively supports SRT streaming. Instead of using the RTMP protocol, you format your stream server URL using the srt:// prefix.

In OBS, navigate to Settings -> Stream. Set the Service dropdown to Custom.

In the Server box, enter your SRT URL (e.g., srt://ingest.streamrepeater.com:8890). In the Stream Key field, you can leave it blank if the stream ID is embedded in the URL, or use the streamid parameter in the URL format (e.g., srt://server:port?streamid=your_stream_key).

Tuning your SRT connection settings

You can append parameters to your SRT URL to customize performance. The most important parameter is latency, which specifies how long SRT will wait to recover lost packets.

A default latency parameter of 120ms (e.g., ?latency=120000 in microseconds) works well for local connections. For long-distance or highly unstable networks, set the latency higher (e.g., 300ms or ?latency=300000) to allow more time for packet recovery.

Relaying SRT streams to RTMP platforms

While SRT is excellent for sending video from your encoder to a relay server, most destination platforms (like Twitch, YouTube, or Kick) still require RTMP or RTMPS.

Stream Repeater bridges this gap: you ingest via SRT for a stable first-hop connection, and our servers automatically repackage the video to RTMP/RTMPS for delivery to your destinations. You get the stability of SRT without losing platform compatibility.

Frequently asked questions

What is the difference between SRT and RTMP?

SRT features built-in packet recovery (ARQ) to prevent stuttering on unstable connections, whereas RTMP does not recover lost packets and is more prone to dropped frames.

How do I format an SRT URL in OBS?

Use the format srt://host:port?streamid=your_key in the Server field under Custom Stream Settings, leaving the Stream Key field blank.

Does SRT require more bandwidth?

Only slightly — SRT adds a small amount of overhead (usually around 5–10%) for error recovery packets, which is well worth the increased stream stability.