Created by Jeroen Wijering

« Back to The State of HTML5 Video

HTTP Live Streaming

This test checks if browsers/devices support the Apple HLS protocol version 3, specifically the following capabilities:

  • Playback of a basic HLS stream (single bitrate).
  • Playback of an adaptive HLS stream (3 bitrates).
  • Playback of an AES encrypted HLS stream.
  • Exposing of 608 captions embedded in the HLS stream.
  • Broadcasting of ID3 metadata embedded in the HLS stream.

See the Pantos draft for more information.

Browser Basic Adaptive AES 608 ID3
Firefox for Desktop - - - - -
Chrome for Desktop - - - - -
Safari for Mac 6+ 6+ 6+ - -
Internet Explorer for Windows - - - - -
Opera for Desktop - - - - -
Safari for iOS 5+ 5+ 5+ 5+ -
Stock Browser for Android 4.1+ 1 4.1+ 1 4.1+ 1 - -
Chrome for Android 30+ 1 30+ 1 30+ 1 - -
Internet Explorer for Winphone - - - - -
Firefox for Android - - - - -
  1. HLS is built into the Android OS since version 3. It has severe issues on Ice Cream Sandwich (4.0). Subsequent Android releases improved upon HLS, but even Lollipop (5.0) has issues with e.g. accurate seeking and updating of controls.

Test Tags

This tag has a single bitrate HLS stream:

This tag has an adaptive HLS stream with 3 qualities (180p, 360p, 720p):

This tag contains an AES encrypted HLS stream:

This tag contains a HLS stream with CEA-608 captions. A CC button should pop up:

This tag contains a HLS stream with ID3 metadata. It should get exposed to JavaScript:

The canPlayType() value for HLS streams (application/x-mpegurl) in your browser is: