What is RTMP? The Real-Time Messaging Protocol: What you Need to Know in 2022
Online video streaming has become increasingly popular over the years, and one of the technologies that helped to make this possible is RTMP. Streaming video technology is constantly evolving, and RTMP has played a key role in its evolution so far.
RTMP stands for Real-Time Messaging Protocol, and it’s been used to stream live video since around 2002. But over the years the protocol has shifted from being something of a prosumer tool to more of a professional one. As live streaming technology evolves, the role of RTMP in video changes along with it.
In this post, we’re going to break down everything you need to know about RTMP and how it relates to live streaming. We’ll discuss what RTMP is and what it isn’t, and take a deep dive into the more technical aspects of the protocol, as well as its future.
We’ll also take a look at RTMP’s specific purpose in live streaming, different variations of the video protocol, and the basics of RTMP encoding. To wrap things up, we’ll discuss how RTMP works with Dacast.
Table of Contents
- What is RTMP?
- RTMP at a Glance
- How Does RTMP Ingest Work?
- Action Message Format (AMF) Explained
- Is Flash Dead?
- RTMP Protocol Variations
- RTMP Encoding
- RTMP vs. RTSP: What’s the Difference?
- How to Live Stream with RTMP on Dacast
- Final Thoughts
What is RTMP?
Real-Time Messaging Protocol (RTMP) is communication technology that enables live video streaming over the internet. It’s based on Transmission Control Protocol (TCP) technology and was originally developed by Macromedia for their Flash Player, which later became Adobe Flash Player after the company was acquired by Adobe.
Originally, RTMP was mostly used to transmit content between a hosting server and a video player. Today, its purpose is a bit different. In terms of the most modern live streaming setups, RTMP’s primary role is to deliver content from an encoder to an online video host. This is a process known as “ingestion”.
In the context of its new role in live streaming, RTMP is important but also somewhat reduced in scope from what it used to do. It’s capable of low-latency streaming, which is a major plus for broadcasters who are streming major events in real time. It’s also known for its minimal buffering, which truly enhances the user experience. RTMP streaming is one of the best ways to deliver low-buffer streaming content.
RTMP technology also plays a role in adaptive-bitrate streaming and in some web conferencing tools. There are several variations of the RTMP protocol used for a number of different purposes, which we’ll discuss further along in this post.
RTMP at a Glance
Here are some facts that will help you better understand what RTMP means and what the protocol does for video content.
- RTMP is a live streaming protocol that transmits video files from an encoder to an online video hosting platform.
- RTMP and its variations stream on TCP and UDP (User Datagram Protocol).
- RTMP doesn’t stream on HTTP (whereas standards like HLS do).
- RTMP supports audio codecs like AAC and MP3.
- H.264 is a common video codec for RTMP encoding, but it also supports other codecs like x264.
- RTMP ingest supports the use of low-cost encoding tools.
- RTMP ingest on Dacast automatically supports conversion to HLS on iOS, Android, and all browsers.
- RTMP has several distinct variations.
- RTMP has been mostly deprecated for general use and is no longer supported by Adobe.
Although RTMP is technically discontinued, it can still be used with certain transcoders in different broadcasting workflows and contexts.
How Does RTMP Ingest Work?
There are three distinct components that make RTMP ingest work:
- The handshake
- The connection
- The stream
This sequence of events can happen almost instantaneously. RTMP ingestion is a relatively simple process, but it’s complicated by the fact that the protocol is no longer supported by Adobe.
RTMP ingestion mostly takes place in professional broadcast environments these days. It can get complicated, but one of the reasons it sticks around is that it has long been a reliable and manageable tool for streaming video. It can still integrate easily with a professional video hosting platform.
Here’s a quick breakdown of the RTMP ingest process.
Step 1: The Handshake
The handshake phase involves a series of quick exchanges between the client and server. First, the client sends what’s commonly called a header. This is basically a cryptographic signature. Immediately after the header is sent, the client sends 1536 bytes of random data.
The server then responds in kind: they send a header, then 1536 bytes of random data immediately following it. Finally, the client sends the server a copy of the server’s random data back to them, then the server sends the client a copy of the client’s random data back to them. This completes the handshake.
Step 2: The Connection
Once the handshake is complete, the connection phase is in effect. The connection phase involves an exchange of data using AMF (Action Message Format) encoding. This establishes a communication standard between the client and server, including general specifications for things like video playback, frame dimensions, and bandwidth.
Step 3: The Stream
Once the connection and communication standards are established, the stream is initiated. This phase allows for essential user commands like play and pause to be executed.
Action Message Format (AMF) Explained
AMF is a binary serialization format that has largely been used to exchange data between Adobe Flash applications and servers. It also serializes object graphs, such as in XML data. Although it was developed for Adobe Flash, AMF is now supported in numerous server-side environments.
The role that AMF continues to play in RTMP is basically the same as that which it played for Flash. It’s the mechanism that allows a client to send commands to a server, which then processes the request and sends a response.
Is Flash Dead?
Flash may well be gone. But RTMP isn’t completely dead, it’s just deprecated for general use. It’s not uncommon in broadcasting for older standards and formats to continue to be used in professional facilities for a number of reasons. One of those reasons is that when a still useful technology falls out of favor with the general public, it can be less vulnerable to piracy. Although Adobe Flash player (the video player that originally used the protocol) is practically dead, RTMP itself is still valuable in other roles in live streaming.
The Adobe Flash Player is no longer supported by Adobe and has largely been replaced by HTML5 video players. As we mentioned, RTMP was used to connect the Flash player to an RTMP delivery server. The HLS protocol has taken over this role with the HTML5 video player.
Basically, RTMP delivery is dead but RTMP ingest for HLS is not.
RTMP remains important in the realm of live streaming, even though its previous main use case is quickly phasing out.
RTMP Protocol Variations
There are several variations of RTMP, including RTMP proper, RTMPS, RTMPE, RTMPT, and RTMFP. These video protocols serve slightly different purposes from one another in the world of live streaming.
Let’s take a look at what exactly each of these streaming protocol variations has to offer.
RTMP proper is the oldest version of the RTMP protocol. This is the streaming format developed by Macromedia (later Adobe) that formed the foundation for the other standards on this list.
RTMPS streaming uses SSL certification to generate a more secure stream. Large platforms like YouTube still use this variation of RTMP in order to protect streamers who go live on public internet servers.
RTMPE was an alternative secure streaming method that was initially developed by Macromedia. It still has limited usage in 2022 but doesn’t use SSL security certification (which remains one of the predominant standards for securing data and content over the internet).
RTMPT is streaming video through tunneling. Tunneling is a way to send private data through public networks. Although this may be useful in certain contexts, it’s also known to introduce extra latency into the process or workflow.
Real-Time Media Flow Protocol (RTMFP) is the RTMP variation that’s built on UDP instead of TCP. This technology is the basis of many video conferencing tools and social media apps with video live stream chat features. The reason that this protocol is preferred for this use case is that it requires less data, which keeps bandwidth costs reasonable.
As previously mentioned, RTMP technology is typically used these days for transmitting video content from a live stream encoder to a streaming platform. In order to stream with a setup that uses the RTMP protocol in this fashion, you must use an RTMP encoder.
Luckily, many of the top encoders on the market still support RTMP, so you shouldn’t have too much trouble finding one that works for you.
Which Encoders Support RTMP?
When it comes to RTMP encoding, broadcasters have options when it comes to software and hardware encoders. There are solutions for almost every need and budget.
Here’s a list of a few of the top RTMP encoder options:
- OBS Studio: OBS Studio is a free, open-source encoding software program that’s perfect for broadcasters who are new to the game. OBS offers a custom version for Dacast users.
- Wirecast: Wirecast is a popular software encoder from Telestream. This software starts at $599, making it better suited for more advanced broadcasters.
- VidBlaster: VidBlaster is a live streaming software program with editing, mixing, and encoding capabilities. It’s a great option for broadcasters who are looking to add a professional touch to their streams. The software starts at $9 per year.
- vMix: vMix is another live streaming software program with encoding capabilities and plans for every budget. Plans currently range from free to $1200 for a lifetime license.
- TriCaster: TriCaster is a series of encoding devices from NewTek. This series includes both portable and stationary options.
- Teradek: Teradek is a hardware company that offers an assortment of encoding devices.
For more information on how to set up an RTMP encoder, please check out our Encoder Setup Guide. You’ll learn more about how to set up your RTMP encoders and what RTMP is.
RTMP Apps for iPhone
In addition to the encoding tools we mentioned above, there are iOS apps that support RTMP streaming from your iPhone. These apps are designed for live streaming on the go.
Here are some examples of the best live streaming apps that support iOS and RTMP:
We’d like to point out that although it’s possible to stream from an iPhone smartphone, streaming with professional-grade equipment is ideal. However, if you’re streaming on-site and don’t have mobile live streaming equipment, an iPhone or iPad can still get the job done.
RTMP vs. RTSP: What’s the Difference?
RTSP, which is short for Real-Time Streaming Protocol, is another protocol that’s used for online video streaming. It’s considerably less popular than RTMP, but is still important.
The main difference between RTMP and RTSP is the part of the live streaming process that they’re each responsible for. RTMP transmits the video from the encoder to the video player whereas RTSP controls commands between the viewers, the server, and the video player.
How to Live Stream with RTMP on Dacast
Dacast automatically uses the RTMP ingest and is compatible with any RTMP encoder. That means that RTMP is a Dacast default rather than a choice. That is how important RTMP is to the process of streaming videos.
What Dacast doesn’t support is RTMP delivery or the Adobe Flash player. The reason for this is that it uses the HTML5 video player, which is a more modern alternative. The HTML5 video player is what makes all-device streaming a possibility.
If you want to learn more about how to set up a live stream on Dacast, please check out the Introduction to Live Streaming guide.
RTMP plays an important role in several different aspects of live streaming. Without this technology, it’s hard to say where the online video streaming industry would be today.
As we wrap things up, it’s important to keep in mind that RTMP isn’t dead, but it simply plays more behind-the-scenes roles than it once did.
If you have any questions about how RTMP works, please contact the knowledgeable Dacast 24/7 support team. They’ll answer your questions and provide you with the materials you need to understand this technical topic.
You’ll get access to 14 days of free service to see why Dacast was selected as the 2019 Streaming Media Readers’ Choice for Best Small/Medium Business Platform. No credit cards or hefty startup fees are required.
In the meantime, please check out the Dacast Knowledgebase, which is a special part of the site that includes documentation on how to use each and every function of the Dacast video streaming platform.
Thanks for reading, and happy streaming.