Dash Video Element

screenshot of Dash Video Element

A custom element (web component) for playing DASH (Dynamic Adaptive Streaming over Http) videos.

Overview

The <dash-video> component is an innovative web solution designed for seamless playback of DASH (Dynamic Adaptive Streaming over HTTP) videos. It's built on top of the robust dash.js library, ensuring that developers can create responsive and adaptive video experiences easily. With an API that mirrors the HTML5 <video> tag, this custom element allows for simple compatibility with existing UI components and other media, making it an ideal choice for modern web applications.

Originally developed by Mux and enriched by contributions from Steve Heffernan, <dash-video> is packaged as a JavaScript module (es6) and is accessible for all evergreen browsers and Node v12+. Its straightforward implementation means developers can quickly add rich video playback capabilities to their applications without a steep learning curve.

Features

  • Compatibility with HTML5: Mirrors the functionality of the HTML5 <video> tag, making it easy to integrate with other media and UI components.

  • Built on dash.js: Leverages the powerful and comprehensive dash.js library for optimal performance in streaming DASH content.

  • Easy Installation: Available as a JavaScript module (es6), ensuring that it can be easily incorporated into various environments.

  • Asynchronous Loading: Modules are loaded asynchronously by the browser, allowing for fast and efficient registration of web components.

  • Support for Modern Browsers: Fully compatible with all evergreen browsers and Node v12+, ensuring broad accessibility for users.

  • NPM or Yarn Integration: Can be added via npm or Yarn, making it simple to manage within existing development workflows.

  • Quick Registration Process: Requires minimal setup to register custom elements, streamlining the onboarding experience for developers.

rollup
Rollup

RollupJS is a popular and efficient JavaScript module bundler that takes the code from multiple modules and packages them into a single optimized file, minimizing the overall size of the application and improving its performance.