Media Source Extensions

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

Media Source Extensions (MSE) is a W3C specification that allows JavaScript to send byte streams to media codecs within web browsers that support HTML5 video.[1] Among other possible uses, this allows the implementation of client-side prefetching and buffering code for streaming media entirely in JavaScript. It is compatible with, but should not be confused with, the Encrypted Media Extensions specification, and neither requires the use of the other.

Netflix announced experimental support in June 2014 for the use of MSE playback on the Safari browser on the OS X Yosemite beta release.[2]

YouTube started using MSE with its HTML5 player in the September of 2013.

Browser support

  • Internet Explorer from version 11 on Windows 8.1. (2013 October) [3]
  • Microsoft Edge since its launch in November 2015. [4]
  • Google Chrome since early 2013, also on Android.[3]
  • Safari 8 on OS X.[3]
  • Opera since 9 June 2015.[5]
  • Firefox 42 with support for all sites since 3 November 2015,[6] with a subset of the functionality available for use with only YouTube in Firefox 37 on Windows Vista or later only.[7] Firefox added the same subset of MSE for YouTube playback support to Mac OS X starting in Firefox 38.[8]


  • THEOplayer by OpenTelly: HLS and MPEG-DASH player for cross-platform HTML5 support without the need for Flash fallback[9]
  • bitmovin's bitdash MPEG-DASH player for HTML5 MSE and EME, with Flash fallback[10]
  • dash-js for HTML5 MSE [11]
  • dash.js for HTML5 MSE and EME [12]
  • rx-player for HTML5 MSE and EME (Live and On Demand) [13]
  • hls.js for HTML5 MSE [14] [15]
  • hasplayer.js for HTML5 MSE and EME, supporting DASH, Smooth Streaming and HLS [16]
  • JW Player 7 and later for MPEG-DASH using HTML5 MSE and EME [17]


See also