100ms: RTMP vs WebRTC vs HLS - Live Video Streaming Protocols Compared

A detailed comparison of RTMP, WebRTC, and HLS protocols, highlighting their differences in latency, scalability, quality, and reach. This resource assists developers in choosing the appropriate protocol based on their specific live video streaming requirements.

Link

Related resources

  • WiresharkA network protocol analyzer that can be used to debug streaming video at the packet level. Wireshark supports protocols like RTMP, HLS (HTT…
  • Pion WebRTCA pure Go implementation of the WebRTC protocol, enabling developers to build real-time video (and audio) streaming applications without ex…
  • CMAF for Low Latency Streaming – BitmovinA detailed blog explaining how CMAF enables low-latency streaming. Bitmovin covers the technical aspects of chunked CMAF, the changes requi…
  • dash.js Low-Latency Streaming DocsReference player documentation for low-latency DASH: HTTP chunked transfer encoding requirements and availabilityTimeOffset configuration.
  • Nginx-RTMP ModuleAn Nginx module that adds RTMP streaming server capabilities to Nginx. It supports streaming live content via RTMP and can also be used to…
  • Shaka Packager: Low Latency TutorialOfficial Shaka Packager docs showing a chunked CMAF low-latency DASH pipeline (ffmpeg → packager → dash.js).
  • HlsqA CLI for adding some color to your HLS manifests along with some basic filtering.
  • ABR Video PlayerSophisticated web-based video player implementing advanced ABR algorithms including BOLA (Buffer Occupancy based Lyapunov Algorithm) and ba…
  • simple-whip-server (Janus)Node.js WHIP server implementation built on the Janus WebRTC gateway, reference implementation by Meetecho (Janus maintainers).
  • GPAC LL-DASH WikiTechnical deep-dive on MP4Box CMAF chunk configuration for low-latency DASH, covering byte-range vs file-per-chunk modes with CLI examples.
  • GStreamer RIST Plugin DocumentationOfficial GStreamer plugin reference for ristsink/ristsrc/ristrtxsend/ristrtxreceive elements implementing TR-06-1 Simple Profile and partia…
  • Sabre — BOLA/MPC ABR Reference SimulatorReference simulator implementing BOLA and MPC adaptive bitrate algorithms, based on dash.js, widely used in ABR research papers.