@mastashake08/dash-manifest-creator

3.0.0-alpha • Public • Published

DASH Manifest Creator

SDE Logo

Create DASH manifests in the browser for live streaming! Shake DASH Encoder (SDE) is a browser-only DASH encoder for Javascript. It is based on the Youtube HTTP DASH specification but can be modified to fit any format. Created by Jyrone Parker and is completely open source. If you would like to contribute consider sponsoring me!

Table Of Contents

Installation

This package is available on NPM npm i dash-manifest-creator

Usage

import { MPD } from "dash-manifest-creator";

const mpd = new MPD();
const dash = mpd.createMpd(videoChunk1);

// generate a new manifest
dash.next();

// generate another manifest down the line
dash.next(videoChunk2);

// generate XML string
const str = mpd.getXMLString();

// generate XML file
const file = mpd.getXMLFile();

For more docs on the MPD class see the docs directory.

Bug Reporting

TODO

Contributing

TODO

API

MPD

Kind: global class

new MPD(config)

Param Type Description
config object configuration object for the manifest

mpD.createMpd(videoData)

Kind: instance method of MPD

Param Type Description
videoData Buffer initial video data for the stream, must be less than 100kb

mpD.createPeriod(id)

Kind: instance method of MPD

Param Type Description
id integer the id of the period

mpD.createAdaptationSet(mimetype) ⇒

Kind: instance method of MPD
Returns: a yielded mimeType attribute

Param Type Default Description
mimetype string "video/webm" The MIME type of the stream

mpD.createContentComponent(contentType, id)

Kind: instance method of MPD

Param Type Default Description
contentType string "video" The content type of the media being streams
id integer 1 The id of the content component

mpD.createSegmentTemplate(videoData, timescale, duration, startNumber, media)

Kind: instance method of MPD

Param Type Default Description
videoData Buffer videoData to be streamed for initialization
timescale integer 1000 The timescale of the media in microseconds
duration integer 2000 The duration of the media in microseconds
startNumber integer 1 The start number of the media content
media string The media URL for update PUTs

mpD.getXMLString() ⇒ string

Kind: instance method of MPD
Returns: string - str - XML string representation of the manifest

mpD.getXMLFile() ⇒ File

Kind: instance method of MPD
Returns: File - file - A new File named init.mpd which contains the manifest XML

Package Sidebar

Install

npm i @mastashake08/dash-manifest-creator

Weekly Downloads

1

Version

3.0.0-alpha

License

MIT

Unpacked Size

1.07 MB

Total Files

45

Last publish

Collaborators

  • mastashake08