Live streaming is such a valuable tool for schools, businesses, and other professional organizations. Many professional broadcasters use online video players that are equipped with the tools you need to broadcast with very little technical know-how.
Even though online video players automate most of the live streaming process, there is so much that goes on behind the scenes. Several different protocols and systems work together to bring broadcasts to life.
Real-Time Messaging Protocol (RTMP) is one of these protocols that make affordable live streaming possible and simple. The role of this protocol has evolved over time, but today, it is primarily used for RTMP ingest allowing users to take advantage of the many low-cost or open-source live encoders that are available.
In this post, we are going to get to the bottom of what RTMP ingest is and why it’s important to live streaming. We will start out by reviewing the RTMP protocol and busting a major myth about it. From there, we will explain what RTMP ingest is and see how it differs from RTMP streaming.
To wrap things up, we will discuss HLS, another related protocol, and talk about how RTMP ingest works with Dacast.
Table of Contents:
- What is RTMP?
- Is RTMP (Flash) Dead?
- What is RTMP Ingest?
- How Does RTMP Ingest Work?
- The Benefits of RTMP Ingest
- RTMP Ingest vs. RTMP Streaming
- HLS Streaming & How it Relates to RTMP Ingest
- RTMP Ingest on Dacast
- Final Thoughts
What is RTMP?
RTMP, which is short for “Real-Time Messenger Protocol” is an online video protocol that has played several roles throughout the history of online video streaming.
It was created by Macromedia, which was purchased by Adobe, with the purpose of distributing video, audio, and other media files for advertising. RTMP was originally designed for streaming with Adobe’s Flash player and is often simply called Flash streaming, but this use is now quite outdated.
Today, RTMP ingest is the most common use of this protocol and has to do exclusively with the exchange between an encoder and an online video platform.
In addition to the standard version of RTMP, there are several variations of the protocol, including RTMPS, RTMPE, RTMPT, and RTMFP. These variations all have slightly different purposes in live streaming.
Is RTMP (Flash) Dead?
As we mentioned, the purpose of RTMP in live streaming has changed over time. The “old” use of RTMP is practically dead. Pretty much anything involving RTMP delivery/streaming and Flash delivery/streaming is obsolete at this point with most browsers completely dropping support of RTMP delivery in 2021.
However, RTMP is not dead. It is alive and well in the form of RTMP ingest where low-cost encoders and the convenience of not having to use a specific IP address for the encoders mean that the protocol is still very valuable for live streaming.
Even though RTMP has found a new role in live streaming that is currently working well, it will likely be phased out eventually once more powerful technology has been developed. This is not to say that there is anything inherently wrong with RTMP, but that is simply the nature of technology.
What is RTMP Ingest?
RTMP ingest is the new role of the protocol. In order to understand how this is different from the original role of the protocol, you need to have a basic understanding of video encoding and the technology that makes live streaming possible.
During the live streaming process, the live video travels in the following route:
Camera → Encoder → Online Video Platform → CDN Servers → Video Player
RTMP ingest means using the RTMP technology to encode and then deliver the live video from the encoder to the online video platform. RTMP ingest requires the use of an RTMP encoder, which is readily available and can be relatively inexpensive compared to encoders using other streaming protocols.
We’d also like to point out that the streaming process is possible without an online video platform. The RTMP encoder can ingest directly into the CDN or video player.
How Does RTMP Ingest Work?
RTMP ingest involves three phases: the handshake, the connection, and the stream.
This process is highly technical, and broadcasters who use an online video platform generally do not need to worry about what goes on behind the scenes. However, understanding how RTMP ingest works may help you understand the importance of choosing a capable encoder.
With that said, let’s take a look at how RTMP ingest transports encoded live video from the encoder to the online video player.
During the handshake, the client sends three chunks of data to the server. The first chunk is used to alert the server to the type of protocol that is being used. The second chunk comes through with a time stamp.
The third and final chunk is sent after the server confirms receipt of the first two. Once the third chunk has been successfully received, the connection can be made.
During the connection phase, the client and server exchange some coded dialogue. The code language used for the connection is “AMF.” The purpose of his dialogue is to establish an “all-clear” to start the stream.
Once the handshake is complete and the connection has successfully been made, the stream should be ready to go. This process is complex, but the technology is designed to make the transport very quickly.
The Benefits of RTMP Ingest
There are several benefits of streaming with RTMP ingest. First, it ensures easy access to encoders. RTMP encoders are relatively inexpensive and simple to set up.
Additionally, RTMP ingest can be used on any channel set up to receive it from any location in the world. It does not require that the location (IP address) of the encoder is known as long as the channel is set up beforehand. With RTMP ingest, you can test your event from one location and then move at any time to an event venue without requiring delays or changes to the CDN channel setup.
Another benefit of RTMP ingest is that when combined with HLS, it yields the lowest latency possible.
RTMP Ingest vs. RTMP Streaming
It is very important to note that this is completely different from RTMP delivery, which used the protocol to transmit video from the video CDN servers to the Flash video player. It is the same protocol but a different function.
RTMP ingest is used with modern live streaming platforms, like Dacast, that use HLS streaming with an HTML5 video player. RTMP streaming, on the other hand, was designed by Adobe to work with its Flash video player.
The primary reason for the shift away from RTMP streaming was that it did not support mobile streaming. At the beginning of this shift, the use of internet-enabled mobile devices was growing greater and greater, so broadcasters needed a solution fast.
Smartphones and tablets are much more easily accessible than a laptop, computer, or smart TV, and today, the majority of streaming is done on mobile devices. If software engineers didn’t develop a streaming method and video player that is compatible with mobile live streaming, the online video industry may not have developed to what it is today.
Another reason for this shift is primarily because RTMP is no longer the “latest and greatest” live streaming protocol. It is still functional, but the new technology has made RTMP streaming the inferior approach.
HLS Streaming & How it Relates to RTMP Ingest
As we mentioned, HLS streaming has taken over the original role of RTMP.
HLS stands for “HTTP Live Streaming” and it is another important video streaming protocol. It is used to deliver video content from the CDN servers to the user-facing HTML5 video player. HLS was created by Apple to make mobile streaming possible.
How HLS ingest works is that it splits files into smaller chunks to transport them more easily during the ingestion process. It is an HTTP-based protocol, whereas RTMP is a TCP-based protocol that uses a bit of a bulkier transporting approach.
HLS is very adaptable, which is useful when reaching viewers with a wide variety of streaming setups. The protocol is also capable of low-latency streaming which is valuable to live streamers. However, the lowest latency combination is RTMP ingest and HLS streaming.
Another major perk of using HLS is that it is compatible with secure multi-bitrate and adaptive bitrate streaming. That means that it can send out multiple renditions of a video at the same time. Each transcoded rendition is a different quality, and the appropriate rendition is sent to each viewer’s video player based on their internet speed. This helps to avoid any buffering or lagging on the viewers’ end.
Although HLS encoding is currently the most suitable protocol for video delivery, other options are being developed. Transcoding technology is evolving constantly, so there is no telling how quickly this could change.
RTMP vs. RTSP
RTMP and RTSP are often confused since their abbreviations only vary by a single letter, but the two protocols serve totally different functions in live streaming.
RTSP is used to execute commands on the video player by the viewer and through these control how the live streaming CDN servers deliver the video. These commands include functions like “Play,” “Pause,” “Fast Forward,” and “Rewind.” RTSP tells the video player what to do any time a viewer uses those buttons.
Bottom line: RTSP is preferred in situations that call for a cheaper, simpler streaming alternative.
RTMP Ingest on Dacast
Dacast uses RTMP ingest by default for live streaming although direct HLS ingest can be made available. This is the most practical use for RTMP at this time.
On a similar note, our platform uses HLS streaming rather than RTMP streaming. This is because HLS is the best protocol available for that stage of the live streaming process and it works with the HTML5 video player.
Since our platform uses RTMP ingest, broadcasters must use an RTMP encoder. Dacast’s support of RTMP ingest is particularly valuable for broadcasters because it means that the platform is compatible with a wide range of RTMP encoders from free and low-cost ones to professional quality encoders.
OBS Studio offers custom versions of the software for Dacast users, which makes it super easy to use. This software is free to use, so it is a great option for broadcasters who are still testing the waters of live streaming.
Live streaming technology is the best it’s ever been thanks to the repositioning of the RTMP protocol for RTMP ingest and the introduction of HLS delivery. This technological combination is powerful and reliable, but with the rate that live streaming technology is evolving, we’re sure that it is not the live streaming process’s final form.
Want to learn more about RTMP and its role in live streaming? You can get in touch with a member of our well-versed 24/7 support team who can answer any questions you may have.
In the meantime, feel free to browse our Knowledgebase, which is a collection of documentation on different aspects of live streaming. A quick search for “RTMP” will generate a list of dozens of entries on the protocol.