HLS vs DASH — Welches Adaptive-Streaming-Protokoll wählen

HLS vs DASH

Beides sind HTTP-basierte Adaptive-Streaming-Protokolle. Sie lösen dasselbe Problem (segmentbasierte Auslieferung mit Bitratenanpassung) mit leicht unterschiedlichem Design.

HLS (HTTP Live Streaming)

Von Apple 2009 entwickelt. Standardisiert als RFC 8216.

  • Manifest: .m3u8 Klartext-Playlist
  • Segmente: historisch .ts (MPEG-TS), heute .m4s (fragmentiertes MP4)
  • Native Browser-Unterstützung: Safari, alle iOS, alle macOS
  • Bibliotheken: HLS.js für Chrome/Firefox/Edge
  • Verschlüsselung: AES-128 auf Segmentebene (am verbreitetsten), SAMPLE-AES für FairPlay
  • Codec-Flexibilität: H.264 + HEVC + AV1 mit fragmentiertem MP4

DASH (Dynamic Adaptive Streaming over HTTP)

Von MPEG 2012 standardisiert.

  • Manifest: .mpd XML
  • Segmente: .m4s (fragmentiertes MP4)
  • Native Browser-Unterstützung: Keine (benötigt Media Source Extensions + JS-Bibliothek)
  • Bibliotheken: Shaka Player, dash.js
  • Verschlüsselung: Common Encryption (CENC) mit gleichzeitiger Unterstützung von Widevine + PlayReady
  • Codec-Flexibilität: Jeder Codec, den MP4 transportiert

Warum HLS den Markt gewann

Native Safari-Unterstützung ohne JS-Bibliothek ist der praktische Vorteil. Die meisten Plattformen liefern zuerst HLS, DASH als Sekundäroption.

Wann DASH noch zählt

  • Studio-DRM mit gleichzeitiger Auslieferung über Widevine + PlayReady — DASH+CENC ist das Standardmuster.
  • Gereifte OTT-Plattformen, die DASH vor Jahren ausgeliefert haben und Toolchains darum gebaut haben.

Für die meisten modernen Projekte ist HLS der einfachere Default. AVCaption liefert ausschließlich HLS aus.

Verwandt

← content.back_to_index