HOME

TheInfoList



OR:

Media Source Extensions (MSE) is a
W3C The World Wide Web Consortium (W3C) is the main international standards organization for the World Wide Web. Founded in 1994 and led by Tim Berners-Lee, the consortium is made up of member organizations that maintain full-time staff working to ...
specification that allows
JavaScript JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
to send
byte stream A bitstream (or bit stream), also known as binary sequence, is a sequence of bits. A bytestream is a sequence of bytes. Typically, each byte is an 8-bit quantity, and so the term octet stream is sometimes used interchangeably. An octet may ...
s to
media codec A codec is a device or computer program that encodes or decodes a data stream or signal. ''Codec'' is a portmanteau of coder/decoder. In electronic communications, an endec is a device that acts as both an encoder and a decoder on a signal or da ...
s within
Web browser A web browser is application software for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's screen. Browsers are used on ...
s that support
HTML5 video The HTML5 specification introduced the video element for the purpose of playing videos, partially replacing the object element. HTML5 video is intended by its creators to become the new standard way to show video on the web, instead of the previo ...
and
audio Audio most commonly refers to sound, as it is transmitted in signal form. It may also refer to: Sound *Audio signal, an electrical representation of sound *Audio frequency, a frequency in the audio spectrum *Digital audio, representation of sound ...
. Among other possible uses, this allows the implementation of client-side prefetching and
buffer Buffer may refer to: Science * Buffer gas, an inert or nonflammable gas * Buffer solution, a solution used to prevent changes in pH * Buffering agent, the weak acid or base in a buffer solution * Lysis buffer, in cell biology * Metal ion buffer * ...
ing code for
streaming media Streaming media is multimedia that is delivered and consumed in a continuous manner from a source, with little or no intermediate storage in network elements. ''Streaming'' refers to the delivery method of content, rather than the content it ...
entirely in
JavaScript JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of Website, websites use JavaScript on the Client (computing), client side ...
. It is compatible with, but should not be confused with, the
Encrypted Media Extensions Encrypted Media Extensions (EME) is a W3C specification for providing a communication channel between web browsers and the Content Decryption Module (CDM) software which implements digital rights management (DRM). This allows the use of HTML5 vi ...
(EME) specification, and neither requires the use of the other, although many EME implementations are only capable of decrypting media data provided via MSE.
Netflix Netflix, Inc. is an American subscription video on-demand over-the-top streaming service and production company based in Los Gatos, California. Founded in 1997 by Reed Hastings and Marc Randolph in Scotts Valley, California, it offers a fil ...
announced experimental support in June 2014 for the use of MSE playback on the Safari browser on the
OS X Yosemite OS X Yosemite ( ; version 10.10) is the eleventh major release of macOS, Apple Inc.'s desktop and server operating system for Macintosh computers. OS X Yosemite was announced and released to developers on June 2, 2014, at WWDC 2014 and rel ...
beta release.
YouTube YouTube is a global online video platform, online video sharing and social media, social media platform headquartered in San Bruno, California. It was launched on February 14, 2005, by Steve Chen, Chad Hurley, and Jawed Karim. It is owned by ...
started using MSE with its
HTML5 HTML5 is a markup language used for structuring and presenting content on the World Wide Web. It is the fifth and final major HTML version that is a World Wide Web Consortium (W3C) recommendation. The current specification is known as the HTML ...
player in September 2013.


Browser support

Media Source Extensions
API An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how ...
is widely supported across all modern
web browsers A web browser is application software for accessing websites. When a User (computing), user requests a web page from a particular website, the browser retrieves its Computer file, files from a web server and then displays the page on the user' ...
, with the only exception being iPhone-family devices (although it is supported on iPadOS). Firefox 37 already had a subset of MSE API available for use with only YouTube in Firefox 37 on Windows Vista or later only., while Mac OS X version had in enabled starting version 38


Minor browsers

* Pale Moon from version 27.0, since 22 November 2016.


Players


NexPlayer
for HTML5 MSE and EME supporting HLS and DASH
castLabs PRESTOplay
video player for HMTL5 MSE and EME supporting DASH and HLS
Akamai Media Player
as a contributor to th
Dash Industry Forum
and DASH.js (DASH IF reference client). AMP includes Dash.js, HLS.js and advanced
QUIC QUIC (pronounced "quick") is a general-purpose transport layer network protocol initially designed by Jim Roskind at Google, implemented, and deployed in 2012, announced publicly in 2013 as experimentation broadened, and described at an IETF meet ...
protocol playback from Akamai Edge Servers * Shaka Player, an open source javascript player library for HTML5 MSE and EME video with
DASH The dash is a punctuation mark consisting of a long horizontal line. It is similar in appearance to the hyphen but is longer and sometimes higher from the baseline. The most common versions are the endash , generally longer than the hyphen b ...
and HLS support * The Video Player by Comcast Technology Solutions * THEOplayer by OpenTelly: HLS and MPEG-DASH player for cross-platform HTML5 support without the need for Flash fallback * Viblast Player: HLS and MPEG-DASH player for HTML5 MSE and EME, with Flash fallback * bitmovin's bitdash MPEG-DASH player for HTML5 MSE and EME, with Flash fallback * dash-js for HTML5 MSE * dash.js for HTML5 MSE and EME * rx-player for HTML5 MSE and EME (Live and On Demand) * hls.js for HTML5 MSE * hasplayer.js for HTML5 MSE and EME, supporting DASH, Smooth Streaming and HLS * JW Player 7 and later for
MPEG-DASH Dynamic Adaptive Streaming over HTTP (DASH), also known as MPEG-DASH, is an adaptive bitrate streaming technique that enables high quality streaming of media content over the Internet delivered from conventional HTTP web servers. Similar to Apple ...
using HTML5 MSE and EME * SLDP HTML5 Player supports SLDP via MSE playback * Azure Media Player supports MSE, EME,
DASH The dash is a punctuation mark consisting of a long horizontal line. It is similar in appearance to the hyphen but is longer and sometimes higher from the baseline. The most common versions are the endash , generally longer than the hyphen b ...
, HLS,
Flash Flash, flashes, or FLASH may refer to: Arts, entertainment, and media Fictional aliases * Flash (DC Comics character), several DC Comics superheroes with super speed: ** Flash (Barry Allen) ** Flash (Jay Garrick) ** Wally West, the first Kid ...
, and
Silverlight Microsoft Silverlight is a discontinued application framework designed for writing and running rich web applications, similar to Adobe Inc., Adobe's Run time environment, runtime, Adobe Flash. A plugin for Silverlight is still available for a v ...
. Streaming URLs are published in an ism/manifest * Unreal HTML5 player uses MSE for low latency (sub-second) live playback of streams sent via WebSockets by
Unreal Media Server Unreal Media Server is a streaming server software created by Unreal Streaming Technologies. Streaming protocol support * UMS protocol (proprietary) for streaming to Unreal Streaming Media Player on Windows OS * WebRTC protocol for live stream ...

Storm Player
uses MSE as one of its delivery modes for ultra-low latency streaming via WebSockets by
Storm Streaming Server A storm is any disturbed state of the natural environment or the atmosphere of an astronomical body. It may be marked by significant disruptions to normal conditions such as strong wind, tornadoes, hail, thunder and lightning (a thunderstorm), ...


See also

*
HTML5 video The HTML5 specification introduced the video element for the purpose of playing videos, partially replacing the object element. HTML5 video is intended by its creators to become the new standard way to show video on the web, instead of the previo ...
*
Dynamic Adaptive Streaming over HTTP Dynamic Adaptive Streaming over HTTP (DASH), also known as MPEG-DASH, is an adaptive bitrate streaming technique that enables high quality streaming of media content over the Internet delivered from conventional HTTP web servers. Similar to Apple' ...
(DASH) *
WebRTC WebRTC (Web Real-Time Communication) is a free and open-source project providing web browsers and mobile applications with real-time communication (RTC) via application programming interfaces (APIs). It allows audio and video communication to wor ...


References

{{W3C standards HTML5 Streaming media systems Year of introduction missing