Skip to content

What's included

Superstreamer is a monorepo, with multiple smaller projects inside. We'll provide a quick overview of the packages below to give you a sense of what each one does.

App

A Single Page Application (SPA) used to interact with the API or start a session on the Stitcher service.

API

The API serves as the primary interface for interacting with Superstreamer, such as start tasks like transcoding or packaging jobs. A swagger page is exposed on the /swagger endpoint.

Artisan

The actual job runners, these run in the background and consume whatever job API has scheduled next. Artisan instructs ffmpeg to run, or packages a previously transcoded asset to an HLS playlist and syncs it all to S3.

Stitcher

Also referred to as a "playlist manipulator," Stitcher can create a session for each user and generate a custom HLS playlist tailored to their needs, including resolution filtering and the addition of bumpers or linear ads. The stitcher has its own API. A swagger page is exposed on the /swagger endpoint.

Player

The player facade simplifies HLS.js with an intuitive API for building the player. It offers player-friendly methods, supports plugins, and provides React hooks for efficient state management.

Released under the MPL-2.0 License.