The video experts blog
What is RTMP? The Real-Time Messaging Protocol: What you Need to Know in 2023
Welcome to our comprehensive guide on RTMP (Real-Time Messaging Protocol) and its significance in the world of live streaming. In this article, we delve into the inner workings of RTMP, explore its features and benefits, and highlight its role in delivering high-quality live video content. Whether you’re a seasoned live streamer or new to the world of online broadcasting, this article will equip you with the knowledge you need to leverage the power of RTMP effectively.
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.
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
- The Three Primary Components of RTMP
- The Advantages of RTMP
- RTMOP In Action: The Live Streaming Workflow
- 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
- RTMP and Beyond: The Evolution of Live Streaming Protocols
- Final Thoughts
What is RTMP?
Real-Time Messaging Protocol (RTMP) is a 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 on streaming servers 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 streaming 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 latency streaming no-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.
- 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.
The Three Primary Components of RTMP
RTMP operates based on three primary components, each serving a specific purpose in the live streaming workflow:
- RTMP Server: The RTMP server acts as the central hub for handling incoming streams and distributing them to connected clients. It manages the media data flow, handles authentication, and ensures smooth transmission between the server and clients.
- RTMP Client: The RTMP client is responsible for receiving the live video and audio streams from the server and presenting them to the end viewer. Clients can range from web browsers and mobile applications to dedicated streaming software.
- RTMP Protocol: The RTMP protocol defines the rules and mechanisms for the delivery of media content over the network. It enables real-time communication, supports adaptive bitrate streaming, and facilitates the exchange of control messages between the server and client.
The Advantages of RTMP
RTMP offers several key advantages that have contributed to its widespread adoption in the live streaming industry:
- Low Latency: RTMP minimizes the delay between the time the content is captured and when it reaches the viewer’s screen. This low latency is crucial for live events, where real-time interaction and engagement are paramount.
- Adaptive Bitrate Streaming: With RTMP, broadcasters can deliver live streams at different quality levels, adapting to the viewer’s internet connection and device capabilities. This ensures a seamless viewing experience, regardless of varying network conditions.
- Wide Platform Compatibility: RTMP is supported by a wide range of platforms, including desktops, mobile devices, smart TVs, and set-top boxes. This compatibility allows broadcasters to reach a larger audience across multiple devices and operating systems.
- Interactive Features: RTMP supports interactivity by enabling features such as live chat, real-time audience polling, and synchronized playback. These interactive elements enhance viewer engagement and foster a sense of community during live streams.
RTMP in Action: The Live Streaming Workflow
To fully grasp the significance of RTMP in the live streaming ecosystem, let’s walk through a typical live streaming workflow that incorporates RTMP technology:
- Capture and Encoding: The live video and audio content are captured using cameras, microphones, or professional broadcasting equipment. These signals are then encoded into a digital format suitable for transmission.
- RTMP Server Configuration: The broadcaster configures an RTMP server, specifying the necessary settings such as stream keys, access control, and streaming quality parameters.
- Streaming Software Setup: Broadcasting software, such as OBS (Open Broadcaster Software) or Wirecast, is configured to establish a connection with the RTMP server. The software handles the encoding, packaging, and transmission of the live content.
- Initiating the Live Stream: With the streaming software configured, the broadcaster initiates the live stream, which establishes a connection with the RTMP server. The server receives the encoded data and prepares it for distribution.
- Viewer Engagement: Viewers access the live stream through various platforms, including websites, social media platforms, or dedicated streaming applications. The RTMP client on their end receives the video and audio streams from the server, allowing them to watch the live content in real-time.
- Real-Time Interactivity: During the live stream, viewers can actively engage with the content and other participants through features such as chat, comments, likes, and interactive overlays. These interactive elements foster a dynamic and immersive viewing experience.
- Archiving and Storage: After the live stream concludes, broadcasters often have the option to archive the recorded stream for later playback. This feature enables on-demand access to previously streamed content, extending its reach beyond the live event.
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 .
Basically, RTMP delivery is dead but RTMP ingest for HLS is not.
RTMP remains important in the realm of live, streaming data only, 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 streaming 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 of streaming work.
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 many social media platforms and 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 encoders 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.
- vMixvMix 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:
- Larix Broadcaster
- Wirecast Go
- Airmix Solo
- Broadcast Me
- LinkedIn Live
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.
For more details of iOS apps such as Twitch, TikTok, and others not mentioned here that support RTMP streaming, please check out our iOS RTMP App comparison.
RTMP vs. RTSP: What’s the Difference?
RTSP, which is short for Real-Time Streaming Protocol, is another protocol that’s used for online, audio video and data streaming. It’s considerably less popular than RTMP, but is still important.
The main difference between 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 streaming 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 live streams and how to set up a live stream on Dacast, please check out the Introduction to Live Streaming guide
RTMP and Beyond: The Evolution of Live Streaming Protocols
While RTMP has long been the go-to protocol for live streaming, the industry has witnessed the emergence of alternative protocols that aim to address specific challenges or offer additional capabilities. Two notable examples are HLS (HTTP Live Streaming) and DASH (Dynamic Adaptive Streaming over HTTP).
HLS (HTTP Live Streaming)
HLS is an adaptive streaming protocol developed by Apple Inc. that delivers live and on-demand content over standard HTTP connections. It breaks the video stream into small, manageable chunks and adjusts the quality dynamically based on the viewer’s network conditions. HLS has gained popularity due to its broad compatibility and native support across iOS devices.
DASH (Dynamic Adaptive Streaming over HTTP)
DASH is an adaptive streaming standard developed by the MPEG industry consortium. It offers similar adaptive bitrate streaming capabilities as HLS but with broader device compatibility, supporting a wide range of operating systems and devices. DASH utilizes media presentation descriptions (MPDs) to provide dynamic stream selection and switching.
RTMP (Real-Time Messaging Protocol) serves as a fundamental building block in the live streaming ecosystem, enabling efficient and low-latency delivery of audio, video, and data between servers and clients. With its wide platform compatibility, adaptive bitrate streaming, and interactive features, RTMP empowers broadcasters to engage their audiences in real-time and create compelling live experiences.
As the live streaming industry evolves, new protocols like HLS and DASH offer alternative approaches to video delivery, each with its unique strengths. However, RTMP continues to be a dominant force, trusted by broadcasters worldwide for its reliability and seamless integration into existing streaming workflows.
Harness the power of RTMP and leverage its capabilities to captivate your audience, create immersive live experiences, and establish your presence in the ever-growing world of online streaming.
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.