RTMP server guide: How to set up a free RTMP server

Live streaming has gained immense popularity over the past few years. The search for RTMP, RTMP server, especially free RTMP Server is booming. If you haven’t gotten on the live streaming bandwagon yet, we guess it is one of the top priorities on your to-do list right now.

With live streaming, we all know how painful the experience can be for your audience if your videos don’t load fast enough. Distorted, pixelated videos getting stuck every few seconds, with the audience having to stare at the buffering wheel is every live stream producer’s nightmare. That is enough to draw your viewers away from your live streams.

It is not always the problem with internet speeds at either end. The problem goes deeper than that. This stream latency is most likely caused by the streaming protocol applied. What your need is a low-latency server for your live streams.

In this article, we will talk about the legendary streaming protocol RTMP, together with the RTMP server, and how to get a free RTMP server.

First, let’s have a look at what a streaming protocol looks like.

What is a streaming protocol?

A streaming protocol is a standardized method of transmitting video or audio content between devices over the internet.

A video streaming protocol sends “chunks” of video or audio content from one device to another device. The method of converting these “chunks” into replayable content on the player device is called the “reassembling” method.

For a successful process, the end device must support the protocol used by the sender. Otherwise, it will not be possible to play the broadcast.

What is an RTMP server?

Real-Time Messaging Protocol or RTMP is a communication protocol for live audio and video streaming over the internet. It was developed as a TCP protocol by Macromedia to stream between a Flash Player and a server. Macromedia was later acquired by Adobe and the once proprietary protocol is now an open specification.

So, what is an RTMP server? RTMP server software allows you to take an incoming Real-Time Messaging Protocol (RTMP) live video stream from an encoder and transmux it into a playback protocol like HTTP Live Streaming (HLS) for viewing.

RTMP today is known for its low-latency video streaming capabilities. To maintain persistent connections during a live stream, the RTMP splits your stream into smaller fragments. The sizes of these fragments can vary dynamically depending on the connection between the source and the server. Sometimes these fragments can also be the same size. The default fragment size is 128 bytes for video data. These smaller chunks of data are easier to transmit over the internet.

RTMP streaming protocol features

  • Audio Codecs: AAC, AAC-LC, HE-AAC+ v1 & v2, MP3, Speex
  • Video Codecs: H.264, VP8, VP6, Sorenson Spark®, Screen Video v1 & v2
  • Playback Compatibility: Not widely supported anymore
  • Limited to Flash Player, Adobe AIR, RTMP-compatible players
  • No longer accepted by iOS, Android, most browsers, and most embeddable players
  • Benefits: Low-latency and minimal buffering
  • Drawbacks: Not optimized for quality of experience or scalability
  • Latency: 5 seconds

RTMP variations:

  • RTMP: The plain TCP- based protocol
  • RTMPS: Uses a secure SSL connection to minimize the risk of cloud-based streaming.
  • RTMPE: Uses Adobe’s proprietary security encryption and is a lighter-weight encryption layer than RTMPS.
  • RTMPT: Encapsulated with HTTP to bypass firewalls and corporate traffic filtering.
  • RTMFP: Uses UDP instead of TCP

Benefits of an RTMP server

Let’s take a closer look at the benefits of the RTMP server.

Low latency

The biggest benefit of streaming through the RTMP server is the low latency it offers. The latency in RTMP is not more than 5 seconds and maybe even lower. That means from the moment a video is captured at your end it does not take more than 5 seconds to stream on the viewer’s screen.

Minimal buffering

RTMP minimizes buffering at the viewers’ end, which means less annoyance for them. Hence, your audience sticks to your live stream for longer.

Adaptive Bitrate Streaming (ABR)

RTMP can compress the data and change the video quality to match the user’s bandwidth, so they continue to receive a continuous stream. This is known as Adaptive Bitrate Streaming. This way, your viewers can enjoy uninterrupted streaming even with low bandwidth.

RTMP alternatives

Though RTMP is an excellent solution for live streams, since 2017 Adobe pulled the plug on the Flash Player, ending RTMP as a last-mile or play protocol. It is still used as a first-mile delivery or ingest protocol though.

Some HTML-5 based alternatives are now being used for ingesting too, in place of RTMP. These include:

HLS (HTTP Live Streaming)

HLS stands for HTTP Live Streaming. HLS is an adaptive HTTP-based protocol used for transporting video and audio data from media servers to the end user’s device.

HLS was created by Apple in 2009. Apple announced the HLS at about the same time as the legendary device iPhone 3. Earlier generations of iPhone 3 had live streaming playback problems, and Apple wanted to fix this problem with HLS.

CMAF (Common Media Application Format)

Common Media Application Format (CMAF) is basically a new format to simplify the delivery of HTTP-based streaming media. It is an emerging standard to help reduce cost, complexity and provide latency around 3–5 seconds in streaming.

CMAF helps us with single-approach encoding, packaging, and storage. CMAF is one of the best alternatives to RTMP streaming protocol for low latency streaming.

WebRTC (Web Real-Time Communication)

WebRTC is another streaming protocol and abbreviation for Web Real-Time Communications. This open-source protocol helps real-time communication between browsers and mobile applications. This protocol is known for its extremely low latency, which is less than 500 milliseconds.

Where to get a free RTMP server for live streaming?

If you are looking for a free RTMP server, try Ant Media. The Ant Media server supports various protocols including RTMP, RTSP, WebRTC, HLS, CMAF, and more. The platform provides adaptive and ultra-low-latency streaming through WebRTC technology. The latency is around 0.5 seconds, which is a great option for interactive video and communication.

Ant Media offers the Community Edition for free and an Enterprise Edition, where you can get direct support and cover by SLAs. This highly scalable solution can run on-premise or on the cloud, whichever is convenient for you.

Why to choose the Ant Media Server

Ant Media Server is one of the fastest-growing and popular streaming engines. Ant Media Server supports WebRTC, CMAF, HLS, RTMP, RTSP, and more for your critical business streaming needs.

Streaming through Ant Media server gives you benefits like:

  • Adaptive Bitrate Streaming
  • Highly scalable, real-time streaming to millions of viewers and publishers
  • Free live streaming software development kits for iOS, Android, JavaScript, Flutter, and Unity
  • Live video monitoring and surveillance using IP cameras

Ant Media Community Edition License for free RTMP Server

The biggest benefit you enjoy with Ant Media is our Community Edition license. With Community edition, you can install RTMP Server easily and for free.

The Community Edition License is a free, self-hosted, and self-managed solution where you get:

  • Low latency of 8 to 12 seconds
  • RTMP and WebRTC ingesting
  • RTSP, RTMP, and HLS pulling
  • Live playing with HLS and MP4
  • Live recording with MP4
  • VoD and IP Camera capabilities
  • Community support

If you are just starting out with live streaming and looking for a free RTMP server, the Ant Media Community Edition License could be a perfect solution for you.

Who needs the Ant Media Enterprise Edition license?

The Enterprise Edition License is a paid self-hosting solution. It has three different plans, starting from $49 per month per instance.

With the base plan on our Enterprise Edition License, you get:

  • Ultra-low end-to-end latency of 0.5 seconds
  • Scalability with cluster support
  • Adaptive Bitrate Streaming
  • Hardware encoding
  • RTMP and WebRTC ingesting
  • Playing with WebRTC, RTMP and HLS
  • Free SDKs for Android and iOS
  • Direct support from Ant Media

If you are a student or a university, you could get our Enterprise Edition License for free. Get in touch with us to know more. Also, Ant Media has a special startup program. If you meet the application conditions, apply now.

You can check the community and enterprise edition comparison table here.

How to set up Ant Media server as an RTMP server for free

1. Download Ant Media Server

Download and save the Ant Media Server Community/Enterprise Edition to your server.

  • Community Edition can be downloaded from here.
  • Enterprise Edition can be downloaded on your account after you get a license on antmedia.io

2. Open Terminal and go to the directory

Open a terminal and go to the directory where you have downloaded the Ant Media zip file.

cd path/to/where/ant-media-server....zip

3. Download the installation script

Download theinstall_ant-media-server.shshell script

wget https://raw.githubusercontent.com/ant-media/Scripts/master/install_ant-media-server.sh && chmod 755 install_ant-media-server.sh

4. Run the installation script

For a clean new installation:

sudo ./install_ant-media-server.sh -i [ANT_MEDIA_SERVER_INSTALLATION_FILE]

For more options you can use sudo ./install_ant-media-server.sh -h

5. Control the Service

You can check the service if it is running.

sudo service antmedia status

You can stop/start the service anytime you want.

sudo service antmedia stop
sudo service antmedia start

6. Install SSL for your Ant Media Server

If you’re installing on your localhost, you can skip this step.

Please make sure that your server instance has a public IP address and a domain is assigned to its public IP address. Then go to the folder where Ant Media Server is installed. Default directory is/usr/local/antmedia

cd /usr/local/antmedia

Run./enable_ssl.sh script in the AMS installation directory. Don’t forget to replace {DOMAIN_NAME}with your domain name.

sudo ./enable_ssl.sh -d {DOMAIN_NAME}

For detailed information about SSL, follow the SSL Setup guide here.

7. Accessing the web panel

Open your browser and typehttp://SERVER_IP_ADDRESS:5080to go to the web panel. If you’re having difficulty accessing the web panel, there may be a firewall that blocks accessing the 5080 port.

That’s all. You now have a free RTMP server if you use the community edition.

Summing up

In this article, We explained RTMP, RTMP server, other protocols, and how you can set up a free RTMP server. Hopefully, you got a good understanding of what is an RTMP server, how to use a free RTMP server, how it can support your live streams, and what the current alternatives are.

Live streaming is here to stay. Be it games, video conferences, webinars, e-learning, entertainment steaming platforms, online bidding, or some other area, the demand for live streams is only going to increase in the coming years. This is the best time to invest in a good, reliable media server for streaming. Get your place on a media server today and start a free trial.

Originally published at https://antmedia.io on February 16, 2022.

--

--

Ant Media Server, open source software, supports publishing live streams with WebRTC and RTMP. It supports HLS(HTTP Live Streaming) and MP4 as well.

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Ant Media Server

Ant Media Server, open source software, supports publishing live streams with WebRTC and RTMP. It supports HLS(HTTP Live Streaming) and MP4 as well.