Skip to content
← All concepts

Messaging & flow

Adaptive bitrate streaming

Encode video at several qualities in small segments so the player can switch quality as bandwidth changes.

Videos are transcoded into renditions (240p–4K) and cut into 2–10 second segments listed in a manifest (HLS or DASH). The player measures throughput and picks the best quality for the next segment, avoiding buffering.

See it in action

Step through the scenarios on the diagram.

Laying out diagram…

1/5After upload, the video is encoded at several bitrates.

Original upload
— One high-quality file
Transcoder
— Makes a ladder of qualities
Renditions
— 240p … 4K, cut into 4-s segments
CDN
— Caches manifest and segments
Player
— Measures bandwidth, picks quality per segment

How it works

  • Transcode in parallel chunks; store segments in object storage.
  • Serve manifests and segments from a CDN.
  • Per-title encoding tunes bitrates to content complexity.

Trade-offs

  • Many renditions multiply storage and encoding cost.

Seen in

Components involved

Related concepts