In recent years, livestreaming has become a norm among content creators, with many viewers opting for it over pre-recorded media. As such, choosing the right streaming protocol or the right video streaming platform is becoming more crucial among content creators. While most people consider how relevant, creative or engaging content is, they often overlook content delivery, which is vital for the success of live streaming.
For viewers to have an enjoyable viewer experience, it is important for the content delivery to be seamless. While there are numerous delivery protocols RTMP and RTSP are among the most common protocols. But which one do you choose among the two?
In this article, we delve into what is RTMP and RTSP and what sets them apart.
Table of Contents
Streaming protocols help in defining the procedure that will be taken to break down your large video file into small chunks or data packets, using which they can be transmitted over the internet more easily. In simple terms, these protocols are just a written set of rules that govern how multimedia sharing or transmission will take place between two communication systems.
Among the most popular ones, you've got RTMP, RTSP, HLS, and WebRTC. Each has its strengths and quirks, which we'll delve into. But for now, just remember: they're the backbone of any video transmission.
RTMP protocol is a TCP-based protocol that allows for real-time communication between a server and a client. Originally, RTMP was developed by Macromedia but it’s now under the ownership of Adobe. It was initially developed to establish stability between servers and Flash players, but with time, as Flash players became less popular, it has grown to become the best protocol for achieving low latency on VOD or live streaming platforms such as YouTube Live, Facebook live and Twitch streaming.
The RTMP protocol of three main components: the RTMP client, the encoder and the RTMP server. The RTMP client is responsible for capturing media files and other data from the source device and then passing it to the encoder which converts (encodes) the data into steamtable formats.
As the intermediary, the RTMP server is responsible for distributing content to the connected viewer. When a viewer wants to view the live stream or VOD, the media player will make a request to the streaming server, which establishes a direct connection with the media player through the RTMP protocol.
When you're streaming video content using RTMP, the video is broken down into small chunks called "packets" and sent from the server to the client in real-time. This means that the video plays simultaneously as it's being downloaded, resulting in a low-latency streaming experience.
RTSP transport protocol, or Real-Time Streaming Protocol is a lesser-known streaming protocol. The primary aim of the RTSP is to control the streaming servers used in both communication and entertainment systems. Basically, RTSP servers sit between the viewer and the live stream and are responsible for handling the ‘pause’ ‘play’ and ‘record’ commands between the systems.
RTSP streaming relies on TCP to transmit the control commands and UDP to transfer video, audio and other data formats. This setup allows RTSP streams to run smoothly even when downloading videos.
When a viewer wants to transmit a video signal, their device will send an RTSP request to a dedicated server which will determine the possible playback options. The server responds with a list of requests capable of receiving via RTSP. When the viewer’s device receives the set of commands and the process for requesting the server, it sends a request for the video description.
When the server responds with the video description, the viewer’s device sends a download request and the server responds will the data pertaining to the transport mechanism, which is when the video streaming process is initiated on the user’s device.
There are two main advantages to using RTSP for streaming:
While RTSP has its strengths, there are also some limitations to consider:
Both streaming protocols were built and designed for seamless low-latency video streaming.
Streaming protocol feature |
RTSP |
RTMP |
Latency |
2 seconds |
2 – 5 seconds |
Audio codecs |
AAC, AAC-LC, HE-AAC + v1 and v2, MP3, Speex, Opus, Vorbis |
AAC, AAC-LC, HE-AAC + v1 and v2, MP3, Speex, Opus, Vorbis |
Video codecs |
H.264, VP6, VP8, Sorenson Spark, Screen Video V1 and V2 |
H.265 (preview), H.264, VP9, VP8 |
Playback compatibility |
Flash Player, Adobe AIR, RTMP-compatible players |
Quicktime Player, RTSP/RTP-compatible players |
Transfer encoding |
None |
Chunked |
Streaming type |
Segmented |
Continuous |
Compatibility |
Requires specific players or applications |
Not natively supported by HTML5 |
Bandwidth usage |
Adaptable to network conditions |
Can be high |
Streaming protocol features |
RTSP (Real-Time Streaming Protocol) |
WebRTC (Web Real-Time Communication) |
Purpose |
Primarily designed for streaming multimedia content from servers to clients |
Designed for real-time, peer-to-peer communications like video and audio calls in web browsers |
Latency |
Usually has a higher latency (can be several seconds) |
Ultra-low latency, typically under 500 milliseconds and often as low as ~100 milliseconds |
Media Control |
Offers control mechanisms like play, pause, and seek |
Lacks such specific media controls. Communication is continuous once established |
Protocol Base |
Built on top of CSeq numbers and session IDs |
Built on top of DTLS (a derivative of SSL) and RTP |
Interactivity |
Low. Mainly one-way streaming (e.g., from security cameras) |
High. Bi-directional audio and video designed for interactive communications |
NAT/Firewall Traversal |
Needs additional mechanisms like STUN or TURN servers, or port-forwarding for traversal |
Built-in NAT/Firewall traversal capabilities using ICE, STUN, and TURN |
Security |
RTSPS is the secure version (using TLS), but not commonly used. Usually relies on external measures for security |
Inherently secure. Uses DTLS for encryption and data integrity, and SRTP for media streams |
Ecosystem |
Used mainly in surveillance, IPTV systems, and certain broadcast applications |
Web-focused, used heavily in web-based video calls, online conferencing tools, and certain gaming applications |
Codec Flexibility |
Often used with a variety of codecs, such as H.264, but depends on the specific implementation |
Primarily VP8, VP9, and H.264 for video. Opus and G.711 for audio. However, more can be supported depending on the implementation |
Scalability |
Suitable for unicast and multicast. Multicast can be useful for large-scale broadcasts |
Designed for peer-to-peer but can be scaled up with additional infrastructure (e.g., Selective Forwarding Units) for group calls or broadcasts |
Browser Support |
Not natively supported by browsers. Requires external players or plugins |
Natively supported by modern web browsers like Chrome, Firefox, Safari, and Edge |
Streaming protocol feature |
HLS |
RTMP |
RTSP |
Latency |
Moderate to high |
Low |
Moderate to low |
Streaming type |
Adaptive |
Continuous |
Segmented |
Customisability |
Low |
Moderate |
High |
Bandwidth usage |
Adaptable to network conditions |
Can be high |
Adaptable to network conditions |
HTTP compatibility |
Compatible |
Incompatible |
Incompatible |
Protocol type |
HTTP-based |
TCP-based |
Typically, RTP over UDP or over TCP |
Encryption |
AES-128 standard encryption |
RTMPE |
Can use RTSPS |
Content delivery |
Uses HTTP, split into chunks |
Push model, continuous stream |
Pull model, client-server interaction |
Adaptive bitrate streaming |
Yes |
Possible with third-party solutions |
Not inherent, but can be implemented |
Error recovery |
Recovers by switching to a lower bitrate |
TCP-based recovery |
Depends on underlying transport protocol (RTP/UDP) |
Use case |
VOD, live streaming with some delay |
Live streaming video conferencing |
Surveillance, on-demand content |
Digital Samba allows users to stream a Digital Samba session to an external RTMP endpoint. The Digital Samba API allows users to define an RTMP endpoint, which then tells the live streamer to send an RTMP stream to that endpoint.
Additionally, Vimeo Premium can also be used to stream from an RTMP source into a Digital Samba session. This is a great way to stream from an RTMP source while keeping Digital Samba features.
As we have seen above, both RTMP and RTSP protocols have their strengths and drawbacks and also serve unique purposes in broadcasting live streams and previously streamed media files online. While RTMP is well suited for streaming pre-recorded media RTSP is suited for localised and live streaming and data transfer.
Ultimately, the decision between RTMP and RTSP depends on the type of content you are streaming.
But, if you’re looking for an easy-to-use, robust video conferencing platform with broad streaming capabilities, try Digital Samba today. Simply create a free account and enjoy 10,000 free participant minutes of HD-quality video calls and a smooth video streaming experience.