一篇介绍MSE, EME, hls, dash, html5的文章

We’ve been hearing that Flash is dead since Apple introduced the iPad back in 2010. Yet it’s still the predominant technology used by premium websites, particularly those that are ad-supported. This is because the first generation of HTML5-based video playback technology, essentially the famous video tag, didn’t enable features critical to the distribution of premium content, such as adaptive streaming, digital rights management (DRM), live streaming, or even true streaming as opposed to progressive download.

At long last, three new HTML5 technologies, the Media Source Extensions (MSE), Encrypted Media Extensions (EME), and Dynamic Adaptive Streaming over HTTP (DASH), will help premium content producers overcome these obstacles, and transition to HTML5 for the adaptive delivery of live and VOD content with DRM. It won’t be easy, and it won’t be particularly clean, but it will definitely be possible.

Definitions

Let’s start with some high-level definitions of the three technologies. MSE is a W3C HTML Working Group specification for a JavaScript interface to play back media data within a browser. It’s more functional than the video tag, and browsers and devices that support MSE can play chunks of video (or byte-range requests within a single file), which enables the adaptive delivery of live and VOD content.

DASH is a standardized file format, much like Apple’s HTTP Live Streaming (HLS) or Microsoft’s Smooth Streaming. Like all HTTP-based adaptive streaming formats, there are two elements: fragmented video files (or byte-range requests within a single file), and manifest files, which identify the location of the various files within an adaptive group and the location of the chunks or byte-range requests of the individual segments. In use, most DASH content is contained in MP4 files, while the manifest files are MPD, which stands for media presentation description, files.

MSE and DASH go together hand in glove. That is, for a browser or device to play DASH files, it must support MSE. So MSE is the playback spec, while DASH is the specified file format.

EME is another JavaScript API that enables HTML5-based DRM by extending MSE with application programming interfaces (APIs) to control the playback of protected content. Before EME, DRM was handled by a plug-in such as Flash, Silverlight, or Widevine, which communicated with the license server to unlock protected content. EME eliminates the middleman and allows the browser or device to communicate directly with the license server.

你可能感兴趣的:(html)