


Packetized metadata (ID3v2.3.0) Elementary Stream.ISO/IEC 11172-3 / ISO/IEC 13818-3 (MPEG-1/2 Audio Layer III) Elementary Stream.ISO/IEC 13818-7 ADTS AAC Elementary Stream.H.264 and ISO/IEC 14496-10 Elementary Stream Webpack is used to build the distro bundle and serve the local development environment. 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. HLS.js works directly on top of a standard HTML element. HLS.js also supports HLS + fmp4, as announced during WWDC2016.

Transmuxing is performed asynchronously using a Web Worker when available in the browser. It works by transmuxing MPEG-2 Transport Stream and AAC/MP3 streams into ISO BMFF (MP4) fragments. It relies on HTML5 video and MediaSource Extensions for playback. HLS.js is a JavaScript library that implements an HTTP Live Streaming client.
