What is RTMP? An Inside Look at the Real-Time Messaging Protocol
If you're curious how live video actually works behind the scenes, here's a quick look at the technology that makes it possible: RTMP.
Daniel Thrasher •
7 minutes read
Wait, What is RTMP? An Inside Look at the Real-Time Messaging Protocol
Live streaming is a remarkable technology! You may not often stop to think about how a business today can live stream video from a standard camera onto the devices of hundreds or thousands of viewers in real time – but it’s a pretty incredible opportunity for business owners and enterprises to reach their audiences.
Clearly, there’s a lot of data magic happening behind the scenes. Here at Flowplayer, we want to help you be as familiar with these technical details as you want, while also making it easy for you to opt for presets if the thought of messing with encoder settings makes your stomach a little queasy.
If you’re at all curious about how live video works, this post will take a high-level peek behind the curtain at one key technology that makes streaming possible: the RTMP streaming protocol. RTMP is kind of like an aging rock star – you’re not quite sure how long it’s going to keep doing its thing, but so far, it keeps showing up and dazzling audiences everywhere.
Ready to learn about RTMP? Let’s dive in!
What is RTMP Streaming?
The acronym RTMP may sound like a cool underground band, but the term actually stands for “Real-Time Messaging Protocol.” This is simply a fancy way of talking about how live stream data moves from one place (your camera) to another (your audience’s mobile device, television, or web browser) across the web.
NOTE: A streaming protocol is different from a codec. The protocol defines how data gets transmitted over the internet, while a codec modulates the audio or video data into a compressed digital format.)
If you follow the journey of data from screen to screen, there are a handful of important stops along the way. Each stage – including the camera, the encoder, the server, and video host – are important, though RTMP is currently an ingest protocol focused on just first-mile delivery in today’s streaming landscape.
A Brief History of RTMP
Where did RTMP come from, and why is it still in use today?
Well, let’s travel back in time to the internet stone age: 1996. In this important year, Macromedia developed RTMP as a TCP technology, connecting its then-new Flash Media player to a dedicated media server to offer some of the very first live streaming over the web.
After Macromedia was acquired by Adobe in 2005, the company continued supporting RTMP as part of its Flash plugin, even making it publicly available in 2008. Fast forward again, and Flash was discontinued in 2020 – largely due to security issues – but also because technology had evolved to include more places for live streaming output, including OTT and mobile devices. That’s when the conventional RTMP technology died.
Of course, RTMP still exists in a different form. These days, live streamers often use RTMP ingest to contribute streaming data via encoder, and then it’s transcoded into a different playback protocol – such as HLS – for distribution to all of the different devices where your stream is viewed.
In addition, content delivery networks (like the one included with Flowplayer) were added to the chain to improve delivery speeds for maximum video quality.
How Does RTMP Streaming Work?
RTMP originally was a delivery protocol that covered the whole chain for transmitting data in real time from a server to a video player – but these days, it’s mostly used on the encoding side.
The four stages of a typical stream are:
Camera captures RAW video.
RTMP encoder converts this RAW video into digital video and sends it to an online video host like Flowplayer.
The online video host receives encoded video and prepares it for delivery to the audience's devices via HLS protocol.
Viewing devices play the live video in real time with minimal latency.
As we mentioned before, RTMP delivery is dead, but RTMP ingest is still popular and widely used for video hosting platforms, paired with an HTML5 video player for all-device streaming.
Alternative Video Streaming Protocols
As important as RTMP is, it’s not the only streaming protocol out there. You’ll find several RTMP variations, plus protocols that focus on other stages of the streaming process. You should also be aware of emerging ingest protocols that stand as direct alternatives to RTMP.
Here are a few of the prominent streaming protocols:
RTSP (Real-Time Streaming Protocol) - An alternate old-school first-mile solution, sometimes dubbed the “cousin” of RTMP.
HLS (HTTP Live Streaming) - Derived from Apple, HLS is an HTTP based streaming protocol that can employ adaptive bitrate streaming for the vast majority of devices out there.
MPEG-DASH (Moving Picture Expert Group Dynamic Adaptive Streaming over HTTP) - This protocol is an open-source competitor to HLS.
SRT - A direct competitor to RTMP as a first-mile protocol that looks to address the challenges associated with video contribution and distribution.
WebRTC - A lightning-fast technology for nearly instantaneous streaming.
Remember that RTMP is the protocol used in the encoder settings for a video host like Flowplayer, but you still need an encoder to convert your camera’s RAW video data to a digital video format so it can be broadcasted online.
Fortunately, there are plenty of software or hardware encoders you can use. We recommend OBS Studio as an excellent software option – if you’re looking for truly professional live stream quality, it may be worth the higher investment in encoding hardware instead.
Why Flowplayer Uses RTMP
Now that you know what RTMP is, you may still be wondering why it’s so popular.
At Flowplayer, we currently use the RTMP protocol for receiving live ingests because it offers several key benefits.
Low latency. For a long time, RTMP reigned supreme with a total latency of 5 seconds or less. For now, it’s still one of the fastest solutions in its category.
No buffering required. Because it delivers a single file at once, you won’t need to worry about the painful user experience involved in buffering.
Wide support. Most video and audio hardware and software are designed to support RTMP, from video capture to encoding tools – and it’s easy to use.
Low cost. Generally, this popular protocol is affordable to work with.
We choose to support RTMP in our video player right now because we’re committed to offering the highest quality viewing experience for your audience. That means if RTMP is eventually supplanted by an up-and-coming new technology like SRT, you can bet that we’ll evolve to ensure you and your viewers have the best possible live streaming experience!.
How do you set up RTMP for your live stream?
In Flowplayer, it’s as simple as using one of our presets when you choose your bitrate settings for live streaming.
Why does Flowplayer use RTMP?
As we said before, RTMP is widely supported, easy to use, and fast. It’s possible that newer technology will replace RTMP someday, but for now, we believe it’s an important protocol to support.
Are other streaming protocols better than RTMP?
Yes, see our answer above in the section on alternative video streaming protocols. Also, remember that some protocols focus on last-mile delivery, such as HLS, which differs from the first-mile functionality of RTMP.
What is RTMP Wrap-up
Hopefully, this post has helped you fully answer the question, “What is RTMP?”
In the end, the Real Time Messaging Protocol (RTMP) may seem like a fossil from a bygone era, but this protocol is still widely supported by many platforms for RTMP ingest, even though it’s essentially dead for delivery since the end of Flash. As it’s continued to evolve in live streaming, RTMP remains as important as ever.
With that said, unless you’re truly fascinated by all the details of live video technology, we’d be happy to handle all the technical stuff for you! You should be focused on delivering the best content you can in your live stream, allowing Flowplayer to deliver the video quality you need!
Flowplayer uses RTMP as the protocol for its Enterprise-level live streaming. If you want to learn more about how this protocol supports quality live streams, contact us here. Or to see all of the features in our Enterprise plan, please visit our Plans and Pricing page!