What is SRT?
SRT is a streaming protocol that stands for Secure Reliable Transport. As the name implies, SRT is used when you want to stream video content that not only has mechanisms for ensuring it reliably gets to the destination, but also so that it has the option of being secure, using encryption.
On Videon's 4K products, SRT is supported as one of our many encoder output types. As of V8.1, Videon’s 4K products support both SRT Caller and SRT Listener mode, meaning that our streaming devices can function in virtually any SRT workflow as the sender side. An example of this is that VLC requires Listener mode to be used on the transmitting side and did not previously work with our Caller-only SRT functionality. Listener mode on Videon devices currently supports up to 3 connected clients.
The main use of SRT is Point-to-Point transmission, where the SRT stream is sent directly to a decoder at another location. That location could be across a building, across a country, or across the world.
An example of an online streaming platforms that supports SRT ingest is Streamguys. In this case, SRT is streamed to a server which then processes the stream in the cloud to prepare the video content in a format that is easily played back by phones, tablet, and computers.
How to use SRT
Using SRT is very similar to the other streaming outputs on Videon devices. For the most part, all that is needed is a properly constructed URL. SRT has a couple additional options, which are explained below.
- Navigate to Encoder Control > Outputs > SRT 1, 2, or 3
- If using Caller mode, make sure the Call Mode is set to Caller
- Enter the URL of the receiving end and a port. This may be an IP and port combination or a host name, depending if the ingest is a Point-to-Point decoder or an online streaming platform.
- The port should match on the sender (Videon device) and receiver (ingest/decoder/server)
- Enter the Stream ID if applicable. Some servers that accept SRT require Stream IDs to be used in order to ingest multiple SRT streams at the same port
- Enter the URL of the receiving end and a port. This may be an IP and port combination or a host name, depending if the ingest is a Point-to-Point decoder or an online streaming platform.
- If using Listener mode, make sure the Call Mode is set to Listener
- Enter the port that you wish to use to host the SRT stream.
- This port must match on both the receiving end and the Videon device
- Enter the port that you wish to use to host the SRT stream.
- Set the latency value
- This value represents the duration of content that is buffered to allow for re-transmission of data (that is how SRT is reliable). This is not the expected glass-to-glass latency
- The lower the latency, the less reliable. The higher the latency, the more reliable the stream will be
- Set the bandwidth value.
- This value represents how much extra data is reserved for SRT's reliability. For example, if the encoder bitrate is set to 2000kbps, setting a bandwidth value of 25% means SRT will use up to 2500kbps to ensure the stream can re-transmit up to 500kbps of data in the case of data loss
- Make sure that [ENCODER_BITRATE] * (100% + [BANDWIDTH_VALUE]) is not greater than 2/3 of your upload bandwidth according to a speed test tool (we recommend speedtest.net)
- We allow setting higher than 50%, but it is not recommended
- (Optional) Set the encryption passphrase and key size
- Encryption allows the SRT stream to only be accessible to a receiver that has a matching passphrase and key size set. This allows a stream using SRT to ensure only the right receiver is decoding the stream.
- The passphrase is entirely custom a long as it is between 10-79 characters
- The larger the encryption key, the more secure
- Once everything is set, enable SRT and check if it is being received by the other end of the workflow!