Secure Reliable Transport (SRT) is an open-source protocol designed for low-latency, high-reliability video transport over unpredictable networks. It uses UDP with ARQ (Automatic Repeat Request) error correction and AES encryption, making it the protocol of choice for remote contribution and professional ingest workflows.
SRT excels in scenarios where reliability and security are critical:
For sub-second latency in browser-based workflows, consider WebRTC instead. For maximum encoder compatibility with no latency requirements, RTMP remains the simplest option.
SRT supports two connection modes. The mode you choose depends on your network topology and firewall configuration.
{% tabs %} {% tab label=“Caller Mode (Recommended)” %} In caller mode, your encoder initiates the connection to the WAVE SRT listener. This is the most common configuration and works well when WAVE’s ingest endpoint has a public IP.
Encoder settings:
srt://ingest.wave.online){% tab label=“Listener Mode” %} In listener mode, your encoder listens on a port and WAVE connects to it. This is useful when the encoder is behind a firewall that cannot accept outbound SRT connections, but can accept inbound ones.
Encoder settings:
WAVE settings:
SRT supports AES encryption to protect your stream content in transit. WAVE supports both AES-128 and AES-256.
{% callout type=“info” title=“Encryption is optional but recommended” %} While SRT works without encryption, we strongly recommend enabling it for any content sent over the public internet. The performance overhead of AES encryption is negligible on modern hardware. {% /callout %}
To enable encryption:
{% callout type=“warning” title=“Passphrase mismatch” %} If the passphrase on your encoder does not match the WAVE stream configuration exactly, the SRT handshake will fail silently. Passphrases are case-sensitive and must match character for character. {% /callout %}
The SRT latency parameter controls the size of the receive buffer. A higher value provides more time for retransmissions (better for lossy networks), while a lower value reduces end-to-end delay.
| Network quality | Recommended latency | Use case |
|---|---|---|
| Excellent (wired LAN) | 120-200ms | Studio-to-studio within the same facility |
| Good (stable broadband) | 200-500ms | Home office to cloud |
| Fair (cellular/Wi-Fi) | 500-1000ms | On-location mobile contribution |
| Poor (satellite, high loss) | 1000-2000ms | Remote or hostile network environments |
{% callout type=“tip” title=“Start high, tune down” %} Begin with a latency of 500ms and gradually reduce it while monitoring the packet recovery rate in the WAVE dashboard. If recovery exceeds 5%, increase the latency buffer. {% /callout %}
SRT’s ARQ mechanism adds bandwidth overhead proportional to network packet loss. Plan for approximately:
Ensure your available upload bandwidth exceeds your stream bitrate plus the expected overhead for your network conditions.
The WAVE dashboard provides real-time SRT connection metrics under Stream > Health > SRT Details:
{% troubleshooter issue=“srt-handshake-timeout” /%}
{% related-articles /%}