Mux

The Mux Developer Hub

Welcome to the Mux developer hub. You'll find comprehensive guides and documentation to help you start working with Mux as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started

HLS Playback Support

Support for HTTP Live Streaming (HLS) across platforms.

Web

There are a few ways that a web browser (or web video player) may support HLS playback.

Natively via the <video> element.

This is currently limited to Apple Safari and Microsoft Edge browsers. However, this is the only way to use HLS (and adaptive streaming in general) on Mobile Safari, the iOS browser.

<video src="myHLS.m3u8"></video>

MediaSource

The Media Source Extensions (MSE) have been introduced to browsers to support adaptive streaming. MediaSource allows JavaScript to fetch and feed video data into a video element, as opposed to the browser fetching the video data. This allows the Javascript to fetch different versions of the video depending on the bandwidth of the viewer (i.e. adaptive streaming).

Flash

Flash is steadily loosing popularity as major browser drop support for Flash plugins, however it can still be used to play HLS content on browsers that don't support MediaSource and still maintain a user base. Specifically Internet Explorer 8-10. Check your own website analytics for IE 8-10 usage to see if Flash HLS support is necessary, and keep in mind that these versions are also popular for bots and spam.

Web Browser Support

Browser
Version
Notes

Chrome

31+ via MediaSource

Firefox (Desktop)

42+ via MediaSource

Firefox (Mobile)

42+ via MediaSource

Safari (Desktop)

6.0+ Native support
8.0+ Via MediaSource

Safari (Mobile)

3.0+ Native support (only)
No MediaSource support.

The lack of MediaSource support means HLS is the only adaptive format supported Safari on iOS.

Microsoft Edge (Desktop + Mobile)

12+ Native support
12+ via MediaSource

MS Internet Explorer

11+ (Windows 8+ only) via MediaSource
8+ via Flash

Android Browser

4.0+ Native support
4.4.4+ via MediaSource

Resources

Web Players/Javascript Libraries

Player/Library
Notes

JavaScript library specifically for playing HLS with the <video> element in browsers that support MediaSource. (No player chrome)

Free & open source web video player, that supports HLS via plugins.

HLS is supported in all packages. HLS support powered by HLS.js.

HLS supported by default. Built on Video.js.

HLS supported by default.

HLS supported by default.

HLS supported by default. The player chrome is built on Video.js, but the HLS support is custom.

Supported via an additional plugin using HLS.js.

HLS supported by default. Built on Video.js.


Mobile Platforms

Mobile Platform
Version
Notes

iOS (Apple)

3.0+

Supported natively.

Android

4.1+ via ExoPlayer
3.0+ via MediaPlayer API

Use ExoPlayer, unless you absolutely require older Android support, but beware that this is fraught with issues.

Resources


TV Platforms

Platform
Notes

Roku

SDK Version 2.6+

Chromecast (Google)

HLS is available through the Media Player Library, or you can use your own player library.

Samsung Tizen

HLS support via the AVPlay API

WebOS (LG TVs)

Resources


Something missing?

Click "Suggest Edits" above and let us know!

HLS Playback Support


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.