Glass-to-Glass Delivery with SRT: The Softvelum WayYuri Udovichenko
Until Haivision brought the SRT video streaming protocol open-source in 2017, reliable delivery over UDP was only available through proprietary, or royalty-free solutions. Since then, the technology has been rapidly adopted by industry leaders, many of which are now members of the SRT Alliance.
One of the results of SRT’s surge in popularity has been that the protocol is being used in lieu of traditional protocols in many use cases. In some of these cases, SRT can replace these protocols in every step of stream delivery: glass to glass. Additional features like HEVC encoding and built-in AES encryption make the protocol even more attractive.
A good example of something which SRT has become an attractive replacement for is RTMP – the primary transport of live streams over the internet. All hardware and software video encoders support RTMP, and it is still very popular. However, as it is a TCP-based technology, it falls short when network conditions are less than ideal. Newer codecs like H.265/HEVC are not supported by RTMP either. Furthermore, from a playback perspective, RTMP has shortcomings related to the decline of Flash in browsers, while it’s still a requirement for RTMP web players.
Fortunately, SRT can fill in these shortcomings.
Softvelum was an early adopter of SRT. The company, which has been developing tools for the streaming media industry since 2011, is best known for Nimble Streamer software media server, WMSPanel media reporting web service, Larix Broadcaster live streaming tools, among others. Softvelum joined SRT Alliance in 2017 soon after implementing SRT into Nimble Streamer, and since then, their team has been actively contributing to SRT codebase and community along with adding the protocol to their mobile solutions.
Initially, Softvelum wanted to use SRT to provide their customers with reliable technology for encoder-to-server and inter-server transmission, which was popular with their customers for cross-continent delivery over unpredictable networks. However, as the technology evolved, it was also added into mobile, such as the Larix Broadcaster applications for live stream production and SLDP Player for reliable playback. Customers wanted to have options for reliable mobile streaming, and with SRT, Softvelum could provide that.
The improvements Softvelum made with the SRT streaming protocol not only provided their customers with flexibility, but also allowed them to experience reliable glass-to-glass delivery.
There are three steps in glass-to-glass delivery on mobile. We are going to look at the different steps below and show how Softvelum is using SRT to improve each of them.
Creation on Mobile
The first stage of live streaming is sending the stream from a mobile encoder to processing servers. Live images are recorded by a mobile device, then encoded and sent through mobile networks. The SRT protocol can cover that transport – it brings additional robustness when streaming over unreliable networks. In addition to SRT’s reliability, its AES encryption also adds a level of security which is important when streaming over public networks. Softvelum’s Larix Broadcaster application for Android and iOS uses SRT to deliver multiple live streams simultaneously to any media server capable of receiving pushed streams. With Larix, the first link in this chain of delivery is covered.
The second stage is for the server to receive and process live streams. Softvelum’s Nimble Streamer can receive and send SRT streams in all its available modes, making it a multi-purpose tool for live stream processing. This includes both single-server processing and more complex chains of delivery. In a blog published by SRT Alliance co-founder, Haivision, there is an example of one of these complex delivery chains, with a Haivision Makito X video encoder sending a live SRT feed to Nimble Steamer, which then sends to stream to the edge server. This kind of chain, enabled with SRT and Nimble Streamer, is particularly valuable for video streams sent over a long distance as it improves the streaming experience without adding much latency.
The final stage for any glass-to-glass workflow is delivery, when the content is played on end-users devices. Recently, Softvelum, added the last missing link by introducing SRT playback support in their SLDP Player app for Android and iOS. It receives SRT streams from sources using “pull” mode and makes use of all the benefits and robustness of the streaming protocol, so the viewer can have a quality viewing experience even over mobile networks.
SRT’s built-in security is a perfect for many use cases. For example, encrypting the streams is critical for law enforcement personnel when sending streams over public networks crowded by unknown devices. Remote medical services also benefit from this encryption capability, protecting patient privacy. SRT is a great choice for when you need your stream to traverse firewalls while meeting high security standards throughout the workflow and has introduced new tools that organizations like Softvelum can implement in many use cases
Another important aspect of SRT is its ability to optimize – the protocol was designed to maximize quality with as little resources as possible. Delivery servers, like Nimble Streamer, also optimize streams, so the combination of the two can help video streamers to save costs. This is especially valuable when sending streams over a long distance, using multiple providers.
Aside from its robustness, SRT also brings lower latency than other video transport protocols. The RTMP vs SRT comparison shows how SRT brings down latency in numerous scenarios from live sports, to online betting, to live news.
If you find all described advantages useful for your particular use case, you should definitely consider adding SRT’s technology to your workflows.