Optimize for Mobile Live Streaming: Convert Your Streaming Protocol from RTMP to HLS

Live streaming is one of the most underrated technological achievements of our era.

We’re already used to 4K-capable smartphone cameras. We expect to shoot and broadcast ultra-high definition video at the same time. However, most of us don’t think about how challenging that really is.

A single minute of 4K video averages more than 5 GB. Even smaller video files can take up a lot of space. Transmitting a constant stream of video to another device instantly is not a simple task.

 

Streaming protocols are the tools that make live streaming possible. Using the right streaming protocol directly impacts streaming performance. It also ensures that video delivery is compatible across all mobile devices.

 

sitting man computer

What exactly is a streaming protocol?

Streaming protocols are standardized methods for transmitting video content from one device to another. These differ from video codecs, which compress and decompress the video content itself.

Streaming protocols specify certain codecs and data channels. This lets streaming media follow the most efficient path between two or more devices.

There are many streaming protocols out there. As of 2020, the two most popular are:

  • Real-Time Messaging Protocol (RTMP): Originally released by Adobe in 2002, RTMP uses Flash technology to send low-latency video across the Internet. It uses the FLV1 video codec and the MP3 AAC audio codec. Despite the fact that Flash is obsolete, RTMP is still widely used.
  • HTTP Live Streaming (HLS): Apple developed HLS to address the fact that their devices are not compatible with Flash. It uses the H.264, H.265, and HEVC video codecs. Its audio codecs are MP3 and AAC. Using HTTP technology offers widespread compatibility with almost any web browser on any device.

 

Note: HLS is sometimes called HTML5 video. This name is incorrect. HTML5 is a completely different technology.

 

You might be wondering why modern devices still use RTMP. Flash technology is obsolete. But it still has historical inertia.

As long as Adobe updates its Flash standards, video hosting providers have no reason to switch. This is changing, though. Adobe has announced it will officially end Flash support and development in 2020.

This means that every live stream user and content creator that currently relies on RTMP will have to convert to another protocol before the year is up. Fortunately, this is not as complicated as it seems.

typing on computer

How to convert from RTMP to HLS

Optimizing live stream content compatibility requires converting your streaming protocol from RTMP to HLS. The first step in this process is choosing a video streaming host platform that supports stream packaging.

Stream packaging is exactly what it sounds like. It is a software tool that inputs an RTMP stream from your encoder and then outputs an HLS stream. This can result in a minimal delay on the feed, but it represents one of the easiest ways to convert.

Once the stream packaging tool finishes converting your content, your video hosting provider can distribute the content to thousands of servers worldwide. The quality and performance of the  content delivery network determines how seamless the streaming experience is for your viewers.

Stream packaging services, like Akamai,  take care of this process for live streaming content creators who use professional video hosting platforms. Part of the value of signing up for a reputable video hosting service is guaranteeing live stream optimization for viewers.

typing on computer

Is there any reason to stick with RTMP?

The short answer is no.

Since Adobe will stop supporting the technology that RTMP relies on, it is only a matter of time before something breaks in your RTMP streaming process. Without support, broken features and components will not be fixed.

The long answer is that there may be some use cases where sticking with RTMP remains a viable short-term option.

For instance, consider a business that needs to support live streaming to employees using company devices. Such a company may not be able to justify switching to HLS.

Let’s say the company has its own dedicated media server and does not equip any employees with Apple iOS devices. There may not be a critical reason to switch over just yet.

Additionally, some live stream content creators need to minimize latency. They may find that RTMP still offers the fastest rate for live streamed content. RTMP delivers video with the latency rate of a cable television broadcast. Stream packaging software can add precious seconds to that delay.

Hybrid options are also viable for large organizations. Some major news broadcasters are choosing to transmit live streams through their own networks using RTMP. This minimizes latency. Afterwards, they use stream packaging solutions to transcode their content for multi-device delivery online. This solves the compatibility problem.

 

Beware! All of these solutions are temporary fixes. Apple has already released an ultra low-latency HLS specification that directly addresses the latency advantage held by RTMP.

 

This standard has already been added to the HLS standard. It offers latency rates of three seconds or less.

However, this is still an emerging standard. Most video hosting vendors are still in the process of adding support for it.

typing on computer

Timeline to low-latency HLS streaming dominance

HLS adoption is on the rise. RTMP use is declining. Every measurable statistic shows that this trend will continue. The death of Flash, and the rise of ultra low-latency HLS will direct the video streaming industry onto Apple’s framework.

Apple added low-latency HLS sections to its authoring specification sheet in June 2020. Adobe promised to end support at the end of the year.

 

Video content producers who want to avoid a 2021 crunch will need to convert to HLS and use a compatible video hosting service like Cincopa before the end of the year. Otherwise, they risk breaking their streaming capabilities.

 

What About Other Streaming Protocols?

RTMP and HLS are not the only protocols in town. There are five other protocols in widespread use. Each one comes with benefits and drawbacks, and some are specific to certain streaming servers.

1. MPEG-DASH

MPEG-DASH is an open-source alternative to HLS. The Moving Pictures Expert Group developed it for Android and Smart TV compatibility. It also works on all modern web browsers.

Unlike other protocols, it is codec-agnostic. This makes the open-source option valuable for film and TV.

MPEG-DASH has a few drawbacks. It is not supported by iOS or Apple TV. Its latency varies, but it can be “tuned” to reduce latency down to six seconds.

2. CMAF for DASH

The Common Media Application Format (CMAF) offers low latency for HTTP streaming. This makes it very similar to Apple’s protocol. It is an emerging technology. Not all vendors support it.

The basic advantage of CMAF for DASH is having a non-Apple solution for low latency live streaming. Transfer setup for CMAF for DASH is different than HLS. This can make it easier for users who want to stay away from Apple hardware.

3. Microsoft Smooth Streaming

Microsoft’s Silverlight player has its own protocol. It offers optimized performance for Microsoft devices, including its Xbox gaming console. Many smart TVs also support Microsoft Smooth Streaming.

This protocol is supported by iOS. It can be tuned to offer low latency performance. There is only one major drawback to using this protocol. Since it is proprietary technology, all support and customization requests must go through Microsoft.

4. SRT

SRT is an emerging protocol that is quickly gaining ground. Its strongest point is its reliability. SRT can deliver quality performance over unstable networks. This makes it popular in developing countries. It has also earned the attention of global news networks.

If you plan on streaming in bad conditions, SRT may work wonders for you. It is codec-agnostic and ultra low-latency. However, it has very limited compatibility. Its developers have yet to implement industry-wide features like playback support.

5. WebRTC

WebRTC combines multiple protocols, standards, and JavaScript APIs to enable live streaming directly through web browsers. This makes it incredibly powerful and versatile. Any user can use WebRTC on any device with best-in-class latency: less than 500 milliseconds.

The main drawback to WebRTC is its lack of scalability. It works perfectly for one-on-one web conferencing, but performs poorly at scale. Web browsers simply are not designed to operate as audio and video servers for hundreds of users at a time. WebRTC cannot broadcast content the way that other protocols do.

man looking at pc

Choose the right protocol for your media and audience

While HLS is definitely the leader in the streaming protocol space, it is not the only option. Most content creators will get great results converting RTMP to HLS to optimize for mobile live streaming. Some will need to take other considerations into account.

When choosing a streaming protocol, look at the following things:

  • Scalability
  • Latency
  • Performance quality
  • Playback support
  • Proprietary vs. open source architecture
  • Codec requirements

 

Finding the best streaming protocol for your live stream content requires taking all of these factors into account. Working alongside a video hosting provider you can trust ensures best-in-class performance and reliability.

Originally published on August 19th, 2020
The Blog

Optimize for Mobile Live Streaming: Convert Your Streaming Protocol from RTMP to HLS

by Austin Jesse Mitchell time to read: 6 min
0