How RTMP Facilitates Live Streaming

2020-10-30 11:10:57
19634
0
Blog picture

RTMP is designed to provide persistent, low-latency live streams. The protocol offers several options, which we’ll discuss in this article.

When the video streaming industry was in its infancy, RTMP was the only standard for transferring media data over the Internet. RTMP gained its popularity due to the Flash plugin that powered almost all browsers. 

Years later, broadcasters continue to use RTMP for streaming, although alternatives have emerged on the market. 

What is RTMP?

RTMP, or real-time messaging protocol, provides video, audio and data transmission between clients. RTMP maintains persistent, low-latency connections, less than one-two seconds, under good network conditions. 

In 2005, Adobe purchased Macromedia, the original developer of RTMP, and made the RTMP specification available to the public in 2012. With RTMP streaming, you can deliver content to popular content distribution networks, or CDNs, such as YouTube and Twitch.

There are several variations of RTMP for different purposes:

  • RTMPT is an RTMP version that is tunnelled over HTTP
  • RTMPS is sent over TLS/SSL for secure connections
  • RTMPE uses Adobe’s security mechanism to provide real-time cryptographic protection
  • RTMFP is a UDP-based protocol which ensures more efficient delivery, decreased latency, greater connection reliability and media data quality

How Does RTMP Work?

To avoid latency and save bandwidth, RTMP breaks the data stream into small packets called chunks. These packets are delivered using independent virtual channels. Within one channel, the packets can be interchanged and multiplexed.

RTMP uses TCP to transport data. At a high level, the data transfer is broken down into a three-step process:

  1. Handshake. The client’s Flash Player contacts the media server to open the RTMP connection between them
  2. Connection. The client sends a connection request for a specific video stream
  3. Stream. Once the server receives the request, it converts raw data to SWF, small web format. Then, the server sends the stream to destination endpoints over RTMP

The server can send the same stream to an unlimited number of Flash Player clients. This is possible when both sides have sufficient bandwidth. To increase capacity for large events, you can chain together several RTMP servers.

The key RTMP problem is the lack of support for the latest video codecs such as HEVC, VP9 and AV1. This means video quality may suffer when using the protocol. 

Another disadvantage is that RTMP was designed for Adobe Flash Player which is to be discontinued in 2020. Browsers are either reducing or completely blocking Flash Player support.

Is RTMP Dead?

For last-mile delivery between CDN and user – yes. But in general – no. RTMP can still be used for intermediate parts of live streams. 

Broadcasters can use the protocol to deliver data to CDN servers. Then, live streams are transcoded to HLS or DASH for delivery to web pages and mobile devices. In other words, RTMP streaming continues, but not for the end user.

Lots of content producers still use RTMP. For instance, YouTube continues to use RTMP, whilst Facebook supports RTMPS for broadcasting. The Wowza report shows that 33% of broadcasters prefer RTMP to other protocols.

How Does Voximplant Leverage RTMP?

With Voximplant, you can forward video calls over RTMP to CDNs that support the protocol. This is how it works:

  1. A video call initiated from the web, mobile or SIP device goes to the Voximplant cloud
  2. The Voximplant cloud forwards an RTMP data stream to a CDN
  3. A CDN provider transcodes and sends a data stream to end users using HLS or DASH

The Voximplant platform allows you to stream to YouTube, Twitch, Restream.io, or a generic RTMP CDN

If you want to add live streaming to your video calling app, check out this blog post. You’ll find a comprehensive overview of live streaming infrastructure, protocols, use cases and a brief guide to the development process.

Sign Up for a free Voximplant developer account or talk to our experts

Add your comment

Name*
Email*
Message

Your comment has been added and will be published after moderation.

Recommended posts

5 Tactics to Strengthen Your Contact Center Operations with Technology

5 Tactics to Strengthen Your Contact Center Operations with Technology

In our fast-paced, digitally focused world, customers want personalized service at lightning speed. A Hubspot survey of 1,000 customers found that 90% of people expect a response from a live customer service agent in ten minutes or less. Because expectations are so high, the pressure is on for customer service agents to consistently provide quick, high-quality customer experiences. Offering an elevated level of service with such a fast turnaround is next to impossible with manual support alone. And even if you have some digital tools in your tech stack, traditional contact center technology can fall short when it comes to efficiency. That’s why choosing no-fuss technology that automates your contact center’s routine operations is essential for making tasks more manageable for your agents.

Speech Technologies For Your Business – The Future of CX

Speech Technologies For Your Business – The Future of CX

Striving to offer the best service possible, contact centers are usually very quick to adopt new technologies and try out innovative solutions. Successful implementation of speech technologies can create a great competitive advantage for a company.

What is a No-code Contact Center?

What is a No-code Contact Center?

If you’re involved in evaluating cloud contact center services, you’ve likely recognized two distinct categories and a big difference in the amount of technical expertise required to implement them. You’re attracted to the ease of use offered by contact center as service (CCaaS) offerings, but their fixed functionality doesn’t fit your business needs. In contrast, a cloud contact center built on a communications platform as a service (CPaaS) offering provides unlimited flexibility, but requires expensive software development resources to build a complete solution.