## Understanding Low Latency in Video Streaming: DASH, HLS and WebRTC

In the evolving world of online video streaming, **low latency** is a key factor in delivering a **seamless and interactive viewer experience**. This is particularly vital in live streaming, where minimizing the delay between the actual event and its digital broadcast enhances viewer engagement.

**Low Latency DASH** (Dynamic Adaptive Streaming over HTTP), introduced by MPEG-DASH in 2018, revolutionized streaming with its ability to reduce end-to-end latencies to _2-5 seconds_. This technology dynamically adjusts video quality to ensure a smooth streaming experience even with varying internet speeds.

Following this, **Low Latency HLS** (HTTP Live Streaming) was launched by Apple in 2019. It further optimized the streaming experience with end-to-end latencies ranging from _3-7 seconds_, offering a robust solution particularly favoured in the Apple ecosystem.

Both technologies represent significant strides in reducing latency, ensuring that viewers can enjoy live events, gaming streams, and interactive broadcasts with minimal delay, thus bridging the gap between real-time and digital experiences.

**WebRTC** takes streaming services a step further by enabling real-time (_sub-second latency_) streaming experiences. For live events, such as sports or education, it allows services to provide an opportunity for interactivity and contribution without fear of introducing latency in data transfer. Unlike DASH and HLS, WebRTC does not buffer; it prioritizes low latency so viewers can be assured that what they are seeing is happening in real time.

## Bitmovin Player Low Latency Support

Bitmovin Player SDKWeb - Browsers, Smart TVs, Set-top boxes, Game ConsolesiOS/tvOS/visionOSAndroid/Android TV/Fire TVRoku
LL-DASH<sup>1,</sup><sup>2</sup>--
LL-HLS<sup>1</sup>✅ (Safari<sup>3</sup>)✅ (iOS/tvOS 14+, visionOS 1+)<sup>4</sup>-
WebRTC[Contact us](🔗)-

<sup>1</sup> The Bitmovin Player also supports configuring a **target latency** on Web & Android platforms. More details can be found in the [API Reference](🔗).

<sup>2</sup> The DASH manifest must contain the availabilityTimeOffset attribute and be fully compliant with CMAF specs. A `UTCTiming` element for clock synchronization is not strictly necessary, but recommended. For more accurate latency calculations, it’s also recommended that the segments contain a Producer Reference Time mp4 box (`prft`).

<sup>3</sup> When you set Bitmovin’s [PlayerType](🔗) to `native`, the browser's native capabilities are being used, which means that Apple’s LL-HLS proprietary protocol is supported since Safari 14+.

<sup>4</sup> For low latency playback in the Bitmovin iOS/tvOS/visionOS Player, set [isCustomHlsLoadingEnabled](🔗) to `false`. This optimizes for low latency but limits access to some manifest details unless Apple provides them. On older iOS versions, or without this setting, playback will be standard latency. With iOS/tvOS 17 and visionOS 1 and later, low latency is achievable also when this option is enabled.

### Legend

✅ Supported | ✖ Not Supported | - Restricted by the platform

## Test your low latency streams with the Bitmovin Player

Visit our [test page](🔗) to see low-latency HLS/DASH streams in action with the Bitmovin Player.

You can also download our fully functional sample showcasing low-latency playback for [Android](🔗) and try it on your Android device.

Tip

[Bitmovin Analytics](🔗) enables you to monitor & optimise latency as well as overall playback performance.

## Bitmovin Player ABR Support

Learn more about what ABRs the Bitmovin Player supports [here](🔗).

## Further reading

  • [Low Latency vs. Target Latency: Why there isn't always a need for speed](🔗)

  • [How important is low latency?](🔗)

  • [Completing the WebRTC Playback Experience – Enabling Rewind During Real-Time Live Streams](🔗)