Understanding streaming protocols can be critical if you are a streamer who will get worldwide popularity and monetize your online activities beyond audio and video codecs, bitrate, fps rates, and resolution. Currently, there are more than twenty of them. However, it is impossible to say unequivocally that any of them is the best since, in addition to latency, the determining factors in their choice are other parameters such as compatibility, security, etc. Below, we will look at the nine most common protocols that can accompany your stream and explain how to choose the best one among them correctly.
What Is a Video Streaming Protocol?
Streaming video protocols are special standardized rules and methods that break down video files into smaller pieces to be delivered to the end user for reassembly and viewing. They come at different levels and can be combined (superimposed on each other) to determine the entire stack of requirements for the streaming formats.
What Are the Most Common Protocols for Video Streaming?
Let's look at the most popular video protocols for live streaming that can be used in 2023.
Real-Time Messaging Protocol (RTMP)
Real-Time Messaging Protocol (RTMP) is a widely used low-latency (3-30 seconds) streaming protocol created by Adobe for transmitting audio and video. It has been around for many years and has become an essential tool for broadcasters, network operators, and many other industries. This streaming protocol is based on Transmission Control Protocol (TCP) technology and is a communication bridge between the application and network layers.
Despite its reliability and security, over time, it has been superseded by some open standards and adaptive bitrate streaming – that’s why the dilemmas like RTMP vs. RTSP/RTP and HLS vs. RTMPS (RTMPS is an RTMP variation using extra security encryption to prevent interception of the stream) are so relevant today.
On the other hand, even because the Flash player (for which this protocol was created) is no longer supported, the use of RTMP is still thriving. In particular, more than 75% of content distributors used it back in 2021. In addition to outdated versions of Flash Player and proprietary Adobe AIR,RTMP-compatible players also support this protocol.
- Supported video codecs: H.264
- Supported audio codecs: AAC
Real-Time Streaming Protocol (RTSP)
The RTSP protocol for transmitting video traffic with a low delay of up to 2 seconds needs to be updated. It describes the old technology for sharing media traffic at the presentation level. Please note that this protocol is not supported by mobile platforms (except for 3Gpp-compatible ones), which limits its use. At the same time, it is often found in surveillance and closed-circuit television (CCTV) solutions, being part of the firmware of modern IP cameras.
- Video codecs supporting this protocol: H.265 (preview), H.264, VP9, VP8
- Audio codecs that support this protocol: AAC, AAC-LC, HE-AAC+ v1 и v2, MP3, Speex, Opus, Vorbis
HTTP Live Streaming (HLS)
HLS, or Apple HLS, is Apple's proprietary solution and supports adaptive bitrate streaming with latency ranging from 6 to 30 seconds. Currently, despite the initial focus only on iOS, this protocol is also compatible with most user devices and browsers (Google Chrome, Android, Linux, and Microsoft devices).
- Supported video codecs: H.265, H.264
- Supported audio codecs: AAC-LC, HE-AAC+ v1 and v2, xHE-AAC, Apple Lossless, FLAC
MPEG-DASH is an HLS analog, which, unlike it, is codec-independent and platform-independent (compatibility is provided with Chrome, Safari, and Firefox browsers, as well as all Android devices and Samsung, Philips, Panasonic, and Sony TVs produced in 2012 and later). All other characteristics typical to HLS remain the same – the protocol provides a delay from 6 to 30 seconds.
Transmission Control Protocol (TCP)
TCP (Transmission Control Protocol) is another popular transmission control protocol used as a transport technology by the HTTP protocol. It determines how data should be broken into packets and sent over communication channels. TCP arranges packets in the correct order and also checks each packet for errors during transmission.
Secure Reliable Transport (SRT)
Codec-agnostic Secure Reliable Transport (SRT) is a relatively new open-source streaming protocol developed by streaming solution providers Haivision and Wowza. Its main features are increased reliability, confidentiality, and minimal latency. At the same time, by 2023, there are still specific problems associated with the limited compatibility of SRT. In this regard, if you decide on this protocol for video streaming, it makes sense to use solutions from SRT Alliance, a partner organization of the suppliers mentioned above.
Suppose you are looking for a protocol with minimal latency (less than 50 ms). In that case, you should pay attention to WebRTC, a protocol created explicitly for video conferencing solutions and supported by Chrome, Firefox, and Safari browsers without additional plugins. At the same time, this video streaming protocol has low scalability – that’s why choosing the first one from the couple SRT vs WebRTC makes sense. Alternatively, you can use additional products like Wowza to implement scalable real-time streaming (up to a million viewers simultaneously).
- Supported video codecs: H.264, VP8, VP9
- Supported audio codecs: Opus, iSAC, iLBC
User Datagram Protocol (UDP)
User Datagram Protocol is a protocol for transmitting data without error checking and correction, which simultaneously provides speedy request processing. It is the most straightforward Transport Layer communication protocol available from the TCP/IP protocol suite, which is often considered an insufficiently reliable transport protocol. UDP is generally used when data acknowledgment is of no concern and is suitable for media streaming applications.
Session Initiation Protocol
SIP (Session Initiation Protocol) is a scalable real-time streaming protocol designed initially for session-based (setup/termination/change) applications only. However, now, it is also supported for real-time video content. Note that SIP is an application layer protocol and can use the above-described UDP vs RTP vs TCP protocols as transport. The SIP protocol is based on 100% compatibility with any other SIP devices and services since, today, it is a global standard.
How to Choose the Right Protocol for Your Video Stream
Now, let's determine what you need to focus on when choosing a particular protocol.
- Compatibility. One of the main factors influencing the choice of a particular protocol is its compatibility with your viewers' devices – the more diverse your audience, the more compatible the protocol should be (in particular, HLS is such).
- Latency. If you prioritize low latency when streaming your media, consider RTMP (note that this protocol is incompatible with HTML5 video players), SRT, and WebRTC.
- Privacy and security. Suppose you are concerned about the safety of your intellectual property during your online broadcasts. In that case, you must pay attention to the SRT protocol, which has the best mechanisms for protecting multimedia traffic.
- Adaptive bitrate. If you need to ensure the integrity of your video stream (this may be true if most of your viewers are mobile users), you are better off choosing between HLS and MPEG-DASH protocols.
Regarding YouTube streaming protocols, this platform supports MPEG-DASH based on the HLS protocol. At the transport layer, the platform uses TCP.
We hope you have understood the specifics of famous (and not-so-popular) protocols for transmitting video online. Now, you can choose the most suitable one for your streaming activities.