Engine docs

mattebox@0.14.0

The adaptive streaming engine for HLS and DASH: a kernel and the stages you add.

npm install mattebox

Chapters

  • Getting startedThis chapter goes from install to a playing HLS stream.
  • Presets and stagesThis chapter covers stages, presets, and how to build your own stack.
  • HLS and DASHThis chapter covers the protocol adapters.
  • Live streamingThis chapter covers the live adapters, the live edge, and wall-clock time.
  • Quality and ABRThis chapter covers rendition selection: what the kernel does, what the abr stage adds, and how your app takes part.
  • Audio and textThis chapter covers track selection, alternate audio, subtitles, captions, and timed metadata.
  • DRMThis chapter covers protected content through Encrypted Media Extensions.
  • Legacy transport streamsThis chapter covers HLS content that MSE cannot accept directly: MPEG-TS segments and raw AAC segments.
  • Events and errorsThis chapter covers events, errors, and the recovery stage.
  • ThumbnailsThis chapter covers scrub previews: the images a UI shows while the viewer drags the progress bar.
  • Network and CDNThis chapter covers the transport: retries, request and response hooks, replacing fetch, and the two CDN stages.
  • DiagnosticsThis chapter covers stats, the trace, and replaying a trace.
  • Builds and targetsThis chapter covers what the package ships and how to reach older devices.
  • CDNThis chapter covers using Mattebox from a script tag: which bundle to load, pinning and integrity, ESM from the CDN, and the MPEG-TS Worker.
  • ChaptersThis chapter covers chapters: named spans of the presentation that a menu or a seek bar shows.
  • Trick playThis chapter covers fast forward and rewind: scanning through the presentation at a multiple of normal speed.
  • Stage referenceThis chapter lists every stage, the presets that include it, and the chapter that describes it. Chapter 02 explains presets and how to add or remove a...
  • ArchitectureMattebox is a kernel plus stages. This document lists every layer and module and how they fit together. For usage, read the guide.