GlossaryMulti-audio tracks

Multi-audio tracks

Multi-audio tracks are several alternative audio streams attached to one video, letting the viewer pick a language, commentary or accessibility version in the player. The video is stored once, while each audio track is a separate rendition listed in the HLS or DASH manifest. This saves storage and lets audiences switch audio without restarting playback.

Why it matters

Multiple audio tracks let one video serve many markets: several languages, commentary, or audio description, all without duplicating the video. That saves storage and encoding costs and makes it easier to launch in new regions with dubbed audio.

How it works

  1. Each language or version of audio is encoded as its own separate track.
  2. The manifest lists every audio track with its language and name.
  3. The player shows the list in an audio menu, often defaulting to the device language.
  4. When the viewer switches, the player fetches the new audio segments in sync with the same video.

How do I add multiple audio tracks to HLS?

In HLS, add one EXT-X-MEDIA entry of type AUDIO for each language in the main playlist, all in the same audio group. Each entry points to its own audio playlist and includes a language code and a name. Video variants then reference that group, so players can show a language menu.

Multi-audio vs separate videos per language: which is better?

Multi-audio tracks are usually better. One video with several audio tracks needs only one set of video files, so storage and encoding costs stay low. Viewers can switch languages without restarting. Separate videos make sense only when the picture itself differs, such as translated on-screen text.

Where it's used

OTT services, sports streamers with multiple commentary feeds and online learning platforms use multi-audio tracks to offer dubbed languages, alternate commentary and audio description in one stream.

By the numbers

  • The HLS specification shows multiple EXT-X-MEDIA tags identifying English, French and Spanish audio renditions so a player can offer the same program in different languages. (RFC 8216: HTTP Live Streaming)