In today’s world, we cannot imagine a day without a video. While we take this technology for granted today, it has not always been so easy. A big part of the rise in popularity of this particular content consumption behavior has to do with the availability of video streaming protocols.
Hence, you may ask what a streaming protocol is, and how you can choose the right one for you. Well, to answer those questions, we’ll dive into several types of protocols and give you an overall view.
Table of Contents
What is a streaming protocol?
A streaming protocol is a standardized method of transmitting video or audio streaming content among 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. Plus, there are various types of streaming protocols such as RTMP, RTSP, WebRTC, HLS, SRT, and CMAF/DASH.
Most used streaming protocols
Now let’s dive into the most used streaming protocols in detail.
We will learn about the following streaming protocols in order:
RTMP (Real-Time Messaging Protocol):
RTMP streaming protocol, a TCP-based technology, was developed by Macromedia for streaming audio, video, and data over the Internet, between a Flash player and a server. Macromedia was purchased by its rival Adobe Inc. on December 3, 2005, but with the phasing out of Flash in 2020, its use has become less to do with viewer-facing delivery of content and more for ingesting live streams into a platform through RTMP-enabled encoders.
RTMP streaming protocol technical specifications:
- 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: 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
RTSP (Real-Time Streaming Protocol):
RTSP establishes and controls either a single or several time-synchronized streams of continuous media such as audio and video. It does not typically deliver the continuous streams itself, although interleaving the continuous media stream with the control stream is possible In other words, RTSP acts as a “network remote control” for multimedia servers.
Because most IP cameras still support RTSP, it remains a standard used in surveillance and CCTV systems.
RTSP technical specifications:
- Audio codecs: AAC, AAC-LC, HE-AAC+ v1 & v2, MP3, Speex, Opus, Vorbis
- Video codecs: H.265 (preview), H.264, VP9, VP8
- Playback compatibility:
- Not widely supported and rarely used for playback (Quicktime Player and other RTSP/RTP-compliant players, VideoLAN VLC media player, 3Gpp-compatible mobile devices)
- Benefits: Low-latency and ubiquitous in IP cameras
- Drawbacks: Not optimized for quality of experience and scalability
- Latency: 2 seconds
- The entire stack of RTP
- RTCP (Real-Time Control Protocol)
- RTSP is often referred to as RTSP
WebRTC (Web Real-Time Communications):
WebRTC stands for web real-time communications and it is a very exciting, powerful, and highly disruptive cutting-edge technology and streaming protocol.
It is HTML5 compatible and you can use it to add real-time media communications directly between browser and devices. Plus, you can do that without the need for any prerequisite plugins to be installed in the browser. It is progressively becoming supported by all major modern browser vendors including Safari, Google Chrome, Firefox, Opera, and others.
Thanks to WebRTC video streaming technology, you can embed the real-time video directly into your browser-based solution to create an engaging and interactive streaming experience for your audience without worrying about the delay.
WebRTC streaming protocol features:
- Ultra-Low Latency Video Streaming – latency is 0.5 seconds
- Platform and device independence
- Advanced voice and video quality
- Secure voice and video
- Easy to scale
- Adaptive to network conditions
- WebRTC Data Channels
- Easy, browser-based contribution.
- Peers open connections directly to each other.
- Low latency and supports interactivity at 500-millisecond delivery.
- Can be used end-to-end for some use cases.
- Not the best option for broadcast-quality streaming due to certain features to enable near real-time delivery.
HLS (HTTP Live Streaming):
HLS is an adaptive HTTP-based protocol used for transporting video and audio data/content 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.
Features of HLS video streaming protocol:
- Closed captions
- Fast forward and rewind
- Alternate audio and video
- Fallback alternatives
- Timed metadata
- Ad insertion
- Content protection
HLS technical specifications:
- Audio codecs: AAC-LC, HE-AAC+ v1 & v2, xHE-AAC, Apple Lossless, FLAC
- Video codecs: H.265, H.264
- Playback compatibility: It was created for iOS devices, however, now all Google Chrome browsers, Android, Linux, Microsoft, and macOS devices; several set-top boxes, smart TVs, and other players support HLS as it is a universal protocol.
- Benefits: Supports adaptive bitrate, reliable, and widely supported.
- Drawbacks: Video quality and viewer experience are prioritized over latency.
- Latency: HLS allows us to have 5-20 seconds latency, but the Low-Latency HLS extension has now been incorporated as a feature set of HLS, promising to deliver sub-2-second latency.
SRT (Secure Reliable Transport):
SRT is an open-source technology designed for reliable and low-latency streaming over unpredictable public networks. It competes directly with RTMP and RTSP as a first-mile solution but is still being adopted as encoders, decoders, and players add support. One interactive use case that SRT proved instrumental for in 2020 was the first virtual NFL draft — ensuring high-quality streaming and operational flexibility from anywhere with an internet connection.
- An open-source alternative to proprietary protocols.
- High-quality and low-latency.
- Designed for live video transmission across unpredictable public networks.
- Accounts for packet loss and jitter.
- Not natively supported by all encoders.
- Still being adopted as newer technology.
- Not widely supported for playback.
CMAF (Common Media Application Format):
CMAF is a new format to simplify the delivery of HTTP-based streaming media. It is an emerging standard to help reduce cost, and complexity and provide a latency of around 3-5 secs in streaming. CMAF can be used in DASH or HLS.
As a result of the declining status of RTMP, other HTTP-based (Hypertext Transfer Protocol) technologies for adaptive bitrate streaming have emerged. However, different streaming standards require different file containers. Such as while MPEG-DASH uses .mp4 containers, HLS streams are delivered in .ts format.
Therefore, every broadcaster who wants to reach a wider audience must encode and store the same video file twice, because encryption creates completely different groups of files.
These two versions of the same video stream should be made either in advance or instantly. Both of these procedures require additional storage and processing costs.
Apple and Microsoft suggested Moving Pictures Expert Group create a new uniform standard called Common Media Application Format (CMAF) to reduce complexity when transmitting video online.
- Cutting costs
- Minimizing workflow complexity
- Reducing latency
Ant Media Server
Ant Media provides ready-to-use, highly scalable real-time video streaming solutions for live video streaming needs. Based on user requirements and preferences, it enables a live video streaming solution to be deployed easily and quickly on-premises or on public cloud networks such as Linode, AWS, and Azure.
Ant Media Server offers not only ultra-low latency but also various low latency options to meet all streaming needs. Latency values for AMS are as follows:
- Ultra-low latency with WebRTC is about 0.5 seconds.
- The low latency with CMAF is about 3 seconds.
- Low latency with HLS is about 10 seconds.
Ant Media has been serving more than 1200 users in 120+ countries all around the world. Customers from different segments such as education, live auctions, radio and TV broadcasts, service providers, government agencies, and gaming companies enhance their business by using Ant Media Server and benefiting from its capabilities.
In conclusion, there are various streaming protocols on the market to choose such as RTMP, RTSP, WebRTC, HLS, SRT, and CMAF and we discussed them in this article with pros and cons. Now you can choose the streaming protocol you need according to your usage scenario.