As companies and Content Delivery Network (CDN) providers prepare for a future filled with the widespread use of live streaming, the need for more efficient protocols has never been more urgent. Well get ready because the future of live streaming has arrived – and that future is SRT, HLS, and MPEG DASH. Let’s look at what each of these live streaming protocols are, their benefits, and application. And to help you choose the one that’s right for you, there’s a quick comparison at the end of this article.
Stream like a pro using SRT, HLS, MPEG-DASH, or RTMP/RTMPS
Flexible Epiphan Pearl all-in-one video production systems support multiple streaming protocols to enable a wide range of uses cases.
Discover the Pearl familySecure Reliable Transport (SRT)
Secure Reliable Transport (SRT) is a rising star in the streaming frontier. It delivers high quality video and audio with low latency over the unreliable public Internet. You can actually control the amount of latency and eliminate issues like jitter due to packet loss over poor networks. SRT also makes it easy to traverse firewalls without needing any help from your IT guy and it’s economical to deploy over the existing network infrastructure. Plus, SRT offers secure streaming with up to 256 bits AES encryption.
SRT is an open-source streaming protocol that’s gaining popularity because of the SRT Alliance, a collaborative effort involving many industry leaders and developers with the goal to advance SRT adoption. Epiphan Video is a certified “SRT ready” member of the SRT Alliance alongside YouTube, Akamai, Wowza, and others. Popular software that have already integrated SRT include OBS Studio, GStreamer, and VLC.
Dubbed a “satellite replacement technology”, SRT’s low cost and ability to deliver high-quality content over the Internet in near real time gives broadcasters a viable alternative to expensive satellite technology.
Benefits
- Low-latency, high-quality video and audio delivered reliably across the existing, unreliable Internet.
- Easily traverse firewalls between the SRT source (encoder) and the SRT destination (decoder).
- Control latency to adjust for changing network conditions.
- Secure livestreaming with up to 256 bits AES encryption.
How SRT works
A dedicated communication link for control and packet recovery is established between the SRT source (encoder) and the SRT destination (decoder). The destination can be a server, CDN, or another SRT device. SRT employs its own packet-loss recovery method using UDP packets over the network, which you can tune to adapt to fluctuating network conditions. When network conditions are poor, more packet buffering can be added to improve video quality. As network conditions improve, the amount of delay can be reduced for a near real-time live stream experience.
Any firewalls between the SRT source device and the destination must be traversed. SRT has three modes for doing that: Rendezvous and Caller/Listener.
Rendezvous mode is the simplest and typically requires no IT involvement to traverse firewalls between the SRT source and destination. If you can’t get through the firewall, then the Caller/Listener modes should be used. However, some IT involvement is needed to set up traffic forwarding so that traffic received at the public IP address and SRT port of the destination device is forwarded to the device on the local network.
SRT application
SRT excels when used to send a bunch of remote contribution feeds over unpredictable networks to a central destination for production and redistribution, such as in a broadcasting model with remote journalists reporting live on location. It’s also great for bringing in remote guests for low-latency interviews and two-way conversations. Whenever high-quality video and audio over unpredictable networks is needed, SRT far surpasses the quality of any Zoom call, WebEx, or WebRTC stream.
Looking for a reliable SRT encoder/decoder?
Pearl all-in-one video production systems fully support secure, high-quality, and low-latency video streaming over SRT.
Discover the benefits Pearl SRT supportHTTP Live Streaming (HLS)
HTTP Live Streaming (HLS) is an adaptive, HTTP-based streaming protocol that sends video and audio content over the network in small, TCP-based media segments that get reassembled at the streaming destination. The cost to deploy HLS is low because it uses existing TCP-based network technology, which is attractive for CDNs looking to replace old (and expensive) RTMP media servers. But because HLS uses TCP, Quality of Experience (QoE) is favored over low latency and lag times can be high (as in seconds instead of milliseconds).
HLS was originally developed by Apple Inc. as a protocol to stream media to Apple devices. Apple has since developed HLS (push), which is an open-standard streaming protocol on the contribution side that’s available to all devices. Currently, HLS supports video that is encoded using H.264 or HEVC codecs.
An advantage of HLS is that it is designed to adapt to different network conditions. Different versions of the stream are sent at different resolutions and bitrates. Viewers can choose the quality of stream they want. HLS also supports multiple audio tracks, which means your stream could have multiple language tracks that users can choose from. Other perks include support for closed captions, metadata, Digital Rights Management (DRM), and even embedded advertisements (in the not too distant future). The framework is all there.
Secure streaming over HTTPS is supported, as well as MD5 hashing and SHA hashing algorithms for user name and password authentication.
Benefits
- High-quality video (up to 4K) and audio delivered reliably across poor-quality networks where low latency isn’t a requirement.
- Easily traverse firewalls.
- Adapts to different network conditions and sends multiple video streams at different resolutions and bitrates.
- Multiple audio track support for things like multi-language streams.
- Supports metadata and other enhanced features.
- Economical to deploy and easy to scale using traditional network servers and technology.
- Secure live streaming using HTTPS and authentication algorithms MD5 hashing and SHA.
How HLS works
The approach is a lot like a file transfer. Media segments stream over HTTP port 80 (or port 443 for HTTPS), which is typically already open to network traffic. As such, the content can easily traverse firewalls with little to no IT involvement.
HLS uses an MPEG2-TS transport stream container with a configurable media segment duration, as well as a configurable playlist size for reassembling the media segments at the ingestion server. Fragmented MP4 is supported.
Because HLS uses TCP-based technology, the network packet loss and recovery method is intensive. That is one of the reasons for the increased latency. Although some control over the media segment size is available, the ability to reduce latency is limited – especially if the ingestion server requires a specific size of media segment.
HLS application
HLS is still the standard for streaming to mobile devices and tablets. You can also use HLS to stream to a CDN that does not support RTMP when low latency isn’t a requirement. It’s important to note that RTMP is already being deprecated by more and more CDNs. HLS is also well suited to securely stream corporate training and town halls over private Local Area Networks (LANs) when low latency isn’t a requirement and network conditions are poor (assuming the network supports HLS).
MPEG-DASH (Dynamic Adaptive Streaming over HTTP)
MPEG-DASH is an open standard, adaptive HTTP-based streaming protocol that sends video and audio content over the network in small, TCP-based media segments that get reassembled at the streaming destination. The International Standards Organization (ISO) and the team at MPEG designed MPEG-DASH to be codec and resolution agnostic, which means MPEG-DASH can stream video (and audio) of any format (H.264, H.265, etc.) and supports resolutions up to 4K. Otherwise, MPEG-DASH functions much the same as HLS.
The cost to deploy MPEG-DASH is low because it uses existing TCP-based network technology, which is attractive for CDNs. But because packets are transported over TCP, Quality of Experience (QoE) is favored over low latency and lag times can be high.
MPEG-DASH is also designed to adapt to different network conditions. Different versions of the stream are sent at different resolutions and bitrates. Viewers can choose the quality of stream they want. Multiple audio tracks are also supported, as well as enhanced features like closed captions, metadata, and Digital Rights Management (DRM). The infrastructure is there for future developments, like embedded advertisements.
Secure streaming over HTTPS is supported, as well as MD5 hashing and SHA hashing algorithms for user name and password authentication.
Benefits
- High-quality video (up to 4K) and audio delivered reliably across poor-quality networks where low latency isn’t a requirement.
- Easily traverse firewalls.
- Adapts to different network conditions and sends multiple video streams at different resolutions and bitrates.
- Video and audio codec agnostic.
- Multiple audio track support for things like multi-language streams.
- Supports metadata and other enhanced features.
- Economical to deploy and easy to scale using traditional network servers and technology.
- Secure live streaming using HTTPS and authentication algorithms MD5 hashing and SHA.
How MPEG-DASH works and applications
MPEG-DASH works the same way as HLS and sends short, media segments over HTTP (port 80) or HTTPS (port 443) for easy firewall traversal. It uses an MPEG2-TS transport stream container with a configurable media segment duration, as well as a configurable playlist size for reassembling the media segments at the ingestion server. Fragmented MP4 is supported.
The high latency of MPEG-DASH is mainly due to the network packet loss and recovery method used for all TCP-based networks. And although MPEG-DASH offers some control over the media segment size, the ability to reduce latency is limited – especially if the ingestion server requires a specific size of media segment.
Use MPEG-DASH to stream to a CDN that does not support RTMP when low latency isn’t a requirement. It’s important to note that RTMP is already being deprecated by more and more CDNs. DASH is also well suited to securely stream corporate training and town halls over private LANs when low latency isn’t a requirement and network conditions are poor
Which streaming protocol is right for you?
While RTMP is by far the most popular streaming protocol, protocols like SRT, HLS, and DASH are challenging that.
What do adaptive HTTP-based streaming protocols HLS and MPEG-DASH have that RTMP doesn’t?
- Multiple audio tracks for one video track for multilingual productions.
- Inclusion of metadata and other types of embedded content.
- Digital rights management (DRM) support.
- Send multiple versions of the stream at different resolutions and bitrates so that viewers can select the quality that suits their network conditions or screen size.
Scalability is much easier and cheaper for HLS and MPEG-DASH than for RTMP. And RTMP usually requires IT network ports to be manually opened in order to traverse firewalls.
If latency or poor network conditions aren’t an issue, then HLS or MPEG-DASH beats out SRT. Adaptive HTTP-based streaming protocols deliver the best possible video quality to viewers with different network conditions and are more straight forward to setup than SRT.
If low latency is needed and you are streaming over unpredictable networks, then SRT is the streaming protocol of choice. SRT establishes its own connection for packet recovery that is way more efficient than TCP. That enables SRT to deliver near real time, two-way communications between a host and a remote guest. And you can tune the latency to adjust for network conditions.
Wrap it up!
CDNs like Akamai have already announced they’re ending support for RTMP. It’s old and expensive to deploy. With new protocols like SRT, HLS, and MPEG-DASH gaining popularity, it’s only a matter of time before RTMP will be a thing of the past. That’s why at Epiphan Video, we’ve added support for SRT, HLS, and MPEG-DASH to our Pearl family of all-in-one video production systems. By adding support for these modern streaming protocols, you can be sure that Pearl-2 and Pearl Mini are ready for the future of live streaming. The Pearl family of encoders are among the few devices in their price range that are certified to stream HLS and MPEG-DASH to Akamai.