VideoJs player with Nuevo theme and plugin MPEG-DASH streaming test
MPEG-DASH (Dynamic Adaptive Streaming over HTTP) is international standard ratified by MPEG and ISO. In recent years, MPEG-DASH has been integrated into new standardization efforts, e.g., the HTML5 Media Source Extensions (MSE) enabling the DASH playback via the HTML5 video and audio tag, enabling DRM-protected playback in web browsers. Today, MPEG-DASH is gaining more and more deployments, and services such as Netflix or Google recently switched to this new standard.
The basic idea of MPEG-DASH is as to chop the media file into segments which can be encoded at different bitrates or resolutions. The segments are provided on a Web server and can be downloaded through HTTP standard compliant GET requests. The adaptation to the bitrate or resolution is done on the client side for each segment.
MPD format (Media Presentation Description) used for MPEG-DASH streaming is a hierarchical data model. Each MPD may contain one or more Periods. Each of those Periods contains media components such as video components (different view angles, different codecs), audio components (different languages, comments), subtitle or caption components, etc.
Main benefits of MPEG-DASH are:
Below you have the most basic videojs player setup code sample for MPEG-DASH playback, with Nuevo plugin included.
- reduction of startup delays and buffering/stalls during the video
- continued adaptation to the bandwidth situation of the client
- use of existing and cost-effective HTTP-based CDNs, proxies, caches
- bypassing of NATs and Firewalls by the usage of HTTP
- Encryption, delivery & utilization of multiple concurrent DRM schemes from the same file
- and much more...
<video id="myplayer" class="video-js vjs-default-skin" width+"640" height="360" controls>
<source src="//path/to/manifest.mpd" type="application/dash+xml" />
var player = videojs('myplayer');