DEV Community

Cover image for Video Streaming Protocols: HLS vs DASH vs WebRTC vs SRT, RTMP, and RTSP
Alvin
Alvin

Posted on

Video Streaming Protocols: HLS vs DASH vs WebRTC vs SRT, RTMP, and RTSP

Article Categories


What are video streaming protocols?

Video streaming protocols define how video data is prepared, transmitted, and delivered from a source to a viewer or application.

Different protocols are designed for different requirements. Some use segmented media files for scalable CDN delivery, while others transmit real-time media packets for applications where latency matters more than scale.

A typical streaming workflow looks like this:

Camera / Video File
        ↓
Encoder
        ↓
H.264 / HEVC
        ↓
Packaging
        ↓
Streaming Protocol
        ↓
Media Server / CDN
        ↓
Player / Application
        ↓
Viewer
Enter fullscreen mode Exit fullscreen mode

Live video usually starts with a camera or encoder, while video-on-demand (VoD) starts with a stored media file.

The video is commonly compressed using codecs such as H.264 or HEVC before being packaged into formats such as MP4 or CMAF.


Which video streaming protocols are most common?

The six protocols you'll encounter most often are HLS, MPEG-DASH, WebRTC, SRT, RTMP, and RTSP.

Protocol Main use case Typical latency Transport
HLS Large-scale live and VoD delivery ~6–30s; lower with LL-HLS HTTP/TCP
MPEG-DASH OTT and adaptive video delivery ~6–30s; lower with LL-DASH HTTP/TCP
WebRTC Real-time communication Typically <500ms RTP/SRTP, usually UDP
SRT Live contribution Sub-second to a few seconds UDP
RTMP Encoder ingest ~2–5s TCP
RTSP IP cameras and surveillance Implementation-dependent RTP over TCP/UDP

These latency figures are typical rather than guaranteed. Encoding, buffering, segment duration, network conditions, and player configuration can significantly affect end-to-end latency.


What is HLS?

HLS (HTTP Live Streaming) is an HTTP-based adaptive streaming protocol developed by Apple. HLS is widely used for large-scale live streaming and video-on-demand delivery.

HLS divides video into smaller media segments and uses playlists to tell the player which segments to request.

Encoder
   ↓
HLS Segments + Playlist
   ↓
HTTP Server / CDN
   ↓
HLS Player
Enter fullscreen mode Exit fullscreen mode

How does HLS compare with other video streaming protocols?

HLS is primarily designed for scalable viewer delivery rather than real-time communication.

Compared with WebRTC, HLS generally has higher latency but is easier to distribute through HTTP infrastructure and CDNs. Compared with RTMP and SRT, HLS is more suitable for viewer playback than live contribution or ingest.

What are the advantages of HLS?

  • Broad compatibility across mobile devices, smart TVs, and streaming platforms.
  • Works with standard HTTP infrastructure and CDNs.
  • Supports adaptive bitrate streaming.
  • Scales well for large audiences.

What are the limitations of HLS?

Traditional HLS introduces several seconds of latency because the player downloads and buffers media segments.

For interactive applications such as video calls, traditional HLS is usually not appropriate. LL-HLS can reduce latency while retaining HTTP and CDN-based delivery.


What is MPEG-DASH?

MPEG-DASH (Dynamic Adaptive Streaming over HTTP) is an open international adaptive streaming standard developed by MPEG.

Like HLS, MPEG-DASH uses HTTP delivery, media segments, and adaptive bitrate streaming. MPEG-DASH is vendor-neutral and supports multiple codecs and media formats.

How does MPEG-DASH compare with HLS?

HLS and MPEG-DASH use similar HTTP-based delivery models and are both suitable for scalable video distribution.

The main difference is that MPEG-DASH is an open, vendor-neutral international standard, while HLS originated from Apple.

Feature HLS MPEG-DASH
Standard Apple-developed MPEG international standard
HTTP delivery Yes Yes
Adaptive bitrate Yes Yes
CDN-friendly Yes Yes
Vendor-neutral No Yes
Low-latency option LL-HLS LL-DASH
Common uses Live, VoD, OTT OTT, VoD, multi-device delivery

What are the advantages of MPEG-DASH?

  • Open, vendor-neutral streaming standard.
  • Supports multiple codecs and media formats.
  • Works with HTTP infrastructure and CDNs.
  • Suitable for OTT, VoD, and multi-device delivery.

What are the limitations of MPEG-DASH?

MPEG-DASH can require additional player support in environments where native browser compatibility is limited.

Its flexibility can also increase implementation complexity across different playback environments.


What is WebRTC?

WebRTC (Web Real-Time Communication) is an open-source framework for real-time audio, video, and data communication between browsers and applications.

WebRTC is designed for applications where low latency and real-time interaction are more important than CDN-oriented one-to-many distribution.

Common use cases include:

  • Video conferencing.
  • Online meetings.
  • Interactive live streaming.
  • Gaming.
  • Real-time collaboration.
  • Browser-based communication.

How does WebRTC compare with HLS and MPEG-DASH?

WebRTC typically provides much lower latency than HLS and MPEG-DASH, making WebRTC better suited to interactive applications.

HLS and MPEG-DASH are generally easier to distribute at large scale through CDNs. WebRTC deployments can require additional media infrastructure such as relay servers or media servers.

What are the advantages of WebRTC?

  • Typically sub-second latency.
  • Native support in modern browsers.
  • Real-time audio, video, and data communication.
  • Encrypted media transport.
  • Strong fit for interactive applications.

What are the limitations of WebRTC?

WebRTC can require significantly more media infrastructure as concurrent users increase.

WebRTC is therefore not automatically the best choice for large-scale one-to-many video distribution. HLS or MPEG-DASH may be more practical when scalability is the primary requirement.


What is SRT?

SRT (Secure Reliable Transport) is a low-latency transport protocol designed for reliable video transmission over unpredictable networks.

SRT is commonly used for live contribution and remote production.

Remote Encoder
      ↓
     SRT
      ↓
Production / Media Server
      ↓
HLS / DASH / WebRTC
      ↓
Viewers
Enter fullscreen mode Exit fullscreen mode

How does SRT compare with other video streaming protocols?

SRT is primarily a contribution and transport protocol rather than a viewer playback protocol.

Compared with WebRTC, SRT is more commonly used to transport professional video between production systems. Compared with HLS and MPEG-DASH, SRT is not designed primarily for large-scale viewer distribution.

What are the advantages of SRT?

  • Reliable transmission over unstable networks.
  • Packet-loss protection and recovery.
  • Low-latency transport.
  • Encryption capabilities.
  • Suitable for professional contribution workflows.

What are the limitations of SRT?

SRT requires compatible encoders, decoders, gateways, or media servers.

SRT is generally used inside the streaming workflow rather than directly in a viewer's browser.


What is RTMP?

RTMP (Real-Time Messaging Protocol) is a mature streaming protocol that remains widely used for live stream ingest.

RTMP was originally developed for audio, video, and data delivery to Flash-based players. Although Flash playback is obsolete, RTMP remains common for sending live video from encoders to streaming platforms.

Encoder
   ↓
  RTMP
   ↓
Streaming Platform
   ↓
Processing
   ↓
HLS / DASH / WebRTC
   ↓
Viewers
Enter fullscreen mode Exit fullscreen mode

How does RTMP compare with other video streaming protocols?

RTMP is primarily used for ingest, while HLS, MPEG-DASH, and WebRTC are more commonly used for viewer delivery.

RTMP is simpler for encoder-to-platform workflows but lacks the modern browser playback compatibility of HTTP-based streaming protocols.

What are the advantages of RTMP?

  • Broad compatibility with live encoders.
  • Supported by many streaming platforms.
  • Simple encoder-to-server workflow.
  • Mature and widely adopted ecosystem.

What are the limitations of RTMP?

RTMP is not well suited to direct browser playback because modern browsers no longer support the Flash environment for which RTMP playback was originally designed.

For viewer delivery, HLS, MPEG-DASH, or WebRTC are generally more appropriate.


What is RTSP?

RTSP (Real-Time Streaming Protocol) is a network control protocol used to establish, manage, and control real-time media sessions.

RTSP is widely used with IP cameras, surveillance systems, network video recorders, and professional video equipment.

RTSP typically works with RTP (Real-time Transport Protocol) for actual media transmission.

How does RTSP compare with other video streaming protocols?

RTSP is commonly used for device-level streaming, particularly with IP cameras.

Unlike HLS and MPEG-DASH, RTSP is not designed for large-scale CDN delivery. Unlike WebRTC, RTSP does not provide direct modern browser playback.

A media server can ingest RTSP and convert the stream into HLS or WebRTC for web-based applications.

What are the advantages of RTSP?

  • Strong compatibility with IP cameras.
  • Supports real-time media session control.
  • Widely used in surveillance systems.
  • Suitable for dedicated streaming environments.

What are the limitations of RTSP?

Modern web browsers generally do not support direct RTSP playback.

Web applications therefore often require a media server or gateway to convert RTSP into a browser-compatible protocol such as HLS or WebRTC.


How do you choose the right video streaming protocol?

The right protocol depends on latency, audience size, compatibility, security, network conditions, and where the protocol is used in the streaming workflow.

Requirement Recommended protocol
Large-scale live streaming HLS
Large-scale VoD HLS / MPEG-DASH
OTT delivery HLS / MPEG-DASH
Interactive streaming WebRTC
Video conferencing WebRTC
Remote production SRT
Encoder ingest RTMP
IP cameras RTSP

Which protocol provides the best compatibility?

Choose HLS when broad device and platform compatibility is important.

Choose WebRTC for modern browser-based real-time applications. MPEG-DASH provides an open adaptive streaming standard but may require a compatible player.

Which protocol provides the lowest latency?

WebRTC is commonly used for the lowest-latency interactive streaming.

SRT is commonly used for reliable low-latency contribution, while HLS and MPEG-DASH prioritize scalable delivery and playback stability.

Which protocol is best for adaptive bitrate streaming?

HLS and MPEG-DASH are the most common choices for adaptive bitrate streaming.

Both protocols can provide multiple video representations and allow the player to switch between bitrates based on bandwidth and device conditions.

How do security requirements affect protocol selection?

SRT provides encryption capabilities for contribution workflows, while WebRTC uses encrypted media transport.

HLS and MPEG-DASH can use HTTPS, access controls, tokenized URLs, and DRM to protect video delivery.


How does CDNetworks support different video streaming protocols?

Choosing a streaming protocol is only part of the architecture. The underlying infrastructure also needs to support different delivery models, from large-scale video distribution to low-latency and contribution workflows.

CDNetworks supports HLS, MPEG-DASH, WebRTC, RTMP, and SRT, allowing streaming workflows to use different protocols at different stages. CDN-based delivery, optimized routing, and scalable infrastructure help support high-concurrency streaming while maintaining stable playback.

CDNetworks Live Streaming Solution

Whether you need large-scale live streaming, low-latency streaming, or video-on-demand (VoD) delivery, CDNetworks provides infrastructure for different streaming requirements without forcing every use case into a single protocol.

Need help choosing the right streaming protocol? Contact CDNetworks to explore a streaming solution for your use case.


What are common mistakes when choosing a streaming protocol?

Using WebRTC for every streaming application

WebRTC provides excellent latency, but low latency does not automatically make WebRTC the best choice for large-scale one-to-many delivery.

HLS or MPEG-DASH can provide a more CDN-friendly distribution model for large audiences.

Using RTMP for browser playback

RTMP remains useful for ingest, but modern browsers are not designed for Flash-era RTMP playback.

Use RTMP primarily to move live video from an encoder into a streaming platform.

Expecting HLS to provide real-time interaction

Traditional HLS uses segment-based delivery and buffering.

If viewers need to interact with live video with sub-second latency, WebRTC is generally a better starting point.

Treating RTSP as browser-compatible

RTSP works well with IP cameras but usually requires protocol conversion before browser playback.

A media server can ingest RTSP and convert the stream into HLS or WebRTC.

Choosing only one protocol

Production streaming systems often use multiple protocols.

For example:

IP Camera → RTSP
Remote Encoder → SRT
Live Encoder → RTMP
              ↓
        Media Platform
              ↓
     ┌────────┼────────┐
     ↓        ↓        ↓
    HLS     DASH    WebRTC
     ↓        ↓        ↓
   CDN      CDN   Real-time Users
Enter fullscreen mode Exit fullscreen mode

Using different protocols at different stages is often more practical than forcing one protocol to handle the entire workflow.


Video Streaming Protocols FAQs

What are the most common video streaming protocols?

The most common video streaming protocols are HLS, MPEG-DASH, WebRTC, SRT, RTMP, and RTSP.

HLS and MPEG-DASH are widely used for scalable delivery, WebRTC is designed for real-time communication, SRT is commonly used for contribution, RTMP is widely used for ingest, and RTSP is common with IP cameras.

Which video streaming protocol is best for low-latency streaming?

WebRTC is commonly used for the lowest-latency interactive streaming. SRT is commonly used for reliable low-latency contribution.

Is HLS or WebRTC better for live streaming?

HLS is generally better for large-scale live streaming, while WebRTC is better for interactive live streaming.

Should I use TCP or UDP for video streaming?

HLS and MPEG-DASH commonly use HTTP over TCP. WebRTC and SRT commonly use UDP-based transport because their architectures prioritize low-latency media delivery.

Which protocol should I use for an IP camera?

RTSP is commonly used for IP cameras. A media server can convert RTSP into HLS or WebRTC when the video needs to be displayed in a web browser.

Is SRT a playback protocol?

No. SRT is primarily a secure, reliable contribution and transport protocol. A streaming platform can receive SRT and distribute the processed video through HLS, MPEG-DASH, or WebRTC.

Is RTMP still relevant?

Yes. RTMP remains relevant primarily for live stream ingest.

RTMP is widely supported by encoders and streaming platforms, while HLS, MPEG-DASH, and WebRTC are generally more appropriate for viewer playback.


Conclusion

There is no single best video streaming protocol.

Use HLS or MPEG-DASH for scalable HTTP-based delivery and adaptive bitrate streaming. Use WebRTC for interactive, sub-second video. Use SRT for reliable low-latency contribution, RTMP for encoder ingest, and RTSP for IP cameras and dedicated media systems.

The most practical streaming architecture often combines several protocols:

RTSP, RTMP, or SRT for ingest and contribution → HLS, MPEG-DASH, or WebRTC for viewer delivery.

Choose the protocol based on the requirements of each stage: latency, scale, compatibility, network conditions, security, and infrastructure.

What does your streaming stack use today? Have you had to combine multiple protocols to solve a production streaming problem?

Top comments (0)