HLS.js is a JavaScript library that implements an HTTP Live Streaming client. It relies on HTML5 video and MediaSource Extensions for playback. It works by transmuxing MPEG-2 Transport Stream and AAC/MP3 streams into ISO BMFF (MP4) fragments. Transmuxing is performed asynchronously using a Web Worker when available in the browser. HLS.js also supports HLS + fmp4, as announced during WWDC2016. HLS.js works directly on top of a standard HTML<video> element. HLS.js is written in ECMAScript6 (*.js) and TypeScript (*.ts) (strongly typed superset of ES6), and transpiled in ECMAScript5 using Babel and the TypeScript compiler. Webpack is used to build the distro bundle and serve the local development environment.

Features

  • VOD & Live playlists
  • MPEG-2 TS container
  • MPEG Audio container (MPEG-1/2 Audio Layer III audio only streams)
  • Encrypted media extensions (EME) support for DRM (digital rights management)
  • Alternate Audio Track Rendition (Master Playlist with Alternative Audio) for VoD and Live playlists
  • Accurate Seeking on VoD & Live (not limited to fragment or keyframe boundary)
  • Ability to seek in buffer and back buffer without redownloading segments

Project Samples

Project Activity

See All Activity >

Categories

Libraries

License

MIT License

Follow HLS.js

HLS.js Web Site

Other Useful Business Software
$300 in Free Credit Towards Top Cloud Services Icon
$300 in Free Credit Towards Top Cloud Services

Build VMs, containers, AI, databases, storage—all in one place.

Start your project in minutes. After credits run out, 20+ products include free monthly usage. Only pay when you're ready to scale.
Get Started
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of HLS.js!

Additional Project Details

Programming Language

TypeScript

Related Categories

TypeScript Libraries

Registered

2023-03-15