RTMP, HLS, WebRTC, FTL streaming protocols explained

We have covered dozens of topics regarding live streaming so you can become a pro! With the help of our articles, you can learn how to properly set up your equipment, use a green screen, and become a Twitch affiliate. But now it’s time to tackle something a little bit more challenging to grasp — streaming protocols. What are those and why do we need them?

In this article, we will compare the most popular live streaming protocols and help you decide which one suits your needs the most. Basically, there’s no such thing as a “bad” streaming protocol. The golden rule is that both you and the viewer have to support the chosen protocol for it to work. Although it may seem a bit complicated, in reality, you don’t need to have some specific education to understand video streaming protocols. This is exactly the point we are going to prove!

Understanding streaming protocols and the way they work

A streaming protocol is a specific method used to deliver multimedia across the web. In other words, it is a set of rules that regulates how data is transferred, as well as how to handle any errors that may occur during this process.

Let’s clear some things up. Firstly, a streaming protocol is not the same as a codec. The latter is a specific technology to make your data (for instance, a video file) smaller. Simply put, a codec deletes unimportant information in the video to compress the file size.

Secondly, some people confuse a streaming protocol with a container format, which basically means how the data is stored. For example, two of the most common package formats for streaming video files are MP4 and MPEG-TS.

Before we start describing the most popular streaming protocols, we need to mention one important aspect. There are seven logical layers, each serving specific communication functions. In order to simplify things, streaming protocols operate within these layers to focus only on their functions. Okay, this doesn’t get any more difficult, so bear with us.

Seven logical layers, each serving specific communication functions

Most-used streaming protocols

Clearly, there are dozens of live streaming protocols, each serving its purpose. However, we can certainly single out the few most popular ones.

RTMP (Real Time Messaging Protocol)

Developed by Macromedia and acquired by Adobe in 2005, RTMP was once the most-used protocol. It maintains a persistent, stable connection and allows for low-latency communication. RTMP transfers stream data that is split into small packets between Flash Player and a server to ensure minimal buffering. The protocol supports almost every video and audio codec.

One of the biggest advantages of RTMP is multicast support. This means you can, for instance, translate your stream through all your corporate network users without creating new connections to each one.

This protocol’s specifications were officially released by Adobe for public use. Ironically, the company announced it would stop supporting Flash Player. Another disadvantage of RTMP protocol is the possibility of interruptions due to low bandwidth up to the point where your stream might not start at all. Adding to the list of cons, some tight firewalls might not allow RTMP connections due to the low security of delivering videos. Although, we have to say this happens quite rarely. The standard stream delay is around five to 30 seconds, but it can be lowered to three seconds.

  • Video codecs: Practically any existing codec
  • Audio codecs: Practically any existing codec
  • Latency: 5 - 30 seconds
  • Pros: Multicast support and minimal buffering
  • Cons: No player support, low security

HLS (HTTP Live Streaming protocol)

Which protocol is most commonly used to stream video? According to the Video Developer Report, HLS is persistently leading the charts, with approximately 45% of broadcasters using it. HLS is an adaptive bitrate streaming protocol developed by Apple back in 2009. It supports multiple audio codecs, including AAC and MP3, as well as HEVC/H.265 and H.264 video codecs.

One of the biggest advantages of this protocol is the fact that it is widely supported and compatible with nearly every platform. Another of HLS’s key features is that the protocol creates multiple versions of a stream to prevent buffering due to the viewer’s low connection. This technology provides a smooth viewing experience without any interruptions.

Apple HLS protocol, however, has a few disadvantages. Due to the fact that it is focused more on the quality of the experience, it is nearly impossible to achieve super-low latencies. The typical latency using HLS is around ten to 60 seconds, meaning you can forget about sub-second latency. You can consult the official Apple instruction on how to set up the HLS stream.

  • Video codecs: H.264 and HEVC/H.265
  • Audio codecs: AAC and MP3
  • Latency: 10 - 60 seconds
  • Pros: Supported on every device, high security, minimal buffering, and high quality
  • Cons: High latency

WebRTC (Web Real-Time Communication protocol)

WebRTC is an open-source live streaming protocol supported by nearly every modern browser, including Safari, Google Chrome, Firefox, Opera, and others. WebRTC uses high-quality VP8 and H.264 video codecs, as well as Opus audio codecs. The protocol is predicted to replace telephony and become the pillar of communication services in the near future.

One of the biggest advantages of WebRTC is that it transforms millions of browsers into streaming terminals without any additional plugins needing to be installed. The protocol automatically adjusts the stream quality to match the viewers’ connection capabilities and establish the smoothest experience. Moreover, WebRTC supports sub-second latency, which means no more delays!

As for the drawbacks, WebRTC doesn’t have many. Some would consider the fact that the protocol is still under development a minus. Others may find the danger in the instability of the codecs it uses. Simply put, the VP8 codec is royalty-free, while H.264 is not. Although most companies agree that VP8 should be the main codec, some others are strongly against this decision.

  • Video codecs: H.264 and VP8
  • Audio codecs: Opus
  • Latency: Less than one second
  • Pros: No plugins needed, stability, and sub-second latency
  • Cons: Codec issue

FTL (Faster Than Light protocol)

FTL was developed by the streaming platform Mixer, owned by Microsoft. This protocol is brand new, which makes it a bit unreliable. However, FTL can surely compete with all the popular streaming protocols. It uses the Opus audio codec and the H.264 video codec to allow for a good mix of quality, smooth playback, and low latency.

FTL’s name surely speaks for itself. FTL is a real-time streaming protocol, which means it supports sub-second latency. This allows you to engage and communicate with your viewers in real time with virtually no delay. FTL is supported by the most popular streaming applications, including XSplit and OBS Studio. It is also pre-integrated into the Windows 10 OS and Xbox One.

The downside of using FTL is that your stream will lose quality a bit. Mixer recommends lowering your bitrate to 7 Mbps in comparison to the RTMP’s 10 Mbps. Another of FTL’s disadvantages is a lack of stability. Unlike its ancestors, the FTL protocol hasn't yet gone through a lot of bug fixes, which means it can be a bit unpredictable. Even though FTL is brand new, it is already fully integrated into the Restream ecosystem.

  • Video codecs: H.264
  • Audio codecs: Opus
  • Latency: Less than one second
  • Pros: Ultra-low latency and wide support
  • Cons: Lower quality and instability

Video streaming protocols comparison

RTMP, HLS, WebRTC, FTL streaming protocols comparison

Let’s wrap up everything!

As you can now see, streaming protocols are tough to understand. Basically, a streaming protocol is a set of rules that determines how data is transferred over the internet. We’ve overviewed the four most popular live streaming protocols, which are RTMP, Apple HLS, WebRTC, and FTL. Each has its own pros and cons, meaning you can use any one depending on your needs. You can, however, simply use Restream.io and stop racking your brain over this technical stuff.

Lastly, we want to make some predictions. It seems quite obvious that the good old RTMP is going to meet its demise sooner or later. Apple HLS is going to compete with FTL for the championship rings. Meanwhile, slowly but surely, WebRTC will grow and transform into the ultimate streaming protocol and will dominate the market eventually. This is just a bald prediction, so don’t take our word for it!