Nefarious Planetary Meddling

    @dminc/mpd-parser

    0.10.11 • Public • Published

    mpd-parser

    Build Status Greenkeeper badge Slack Status

    NPM

    mpd parser

    Table of Contents

    Installation

    npm install --save mpd-parser

    The npm installation is preferred, but Bower works, too.

    bower install  --save mpd-parser

    Usage

    var manifest = [
      '<>',
      '<>',
    ].join('\n');
    
    var parsedManifest = mpdParser.parse(manifest, manifestUrl);

    Parsed Output

    The parser ouputs a plain javascript object with the following structure:

    Manifest {
      allowCache: boolean,
      endList: boolean,
      mediaSequence: number,
      discontinuitySequence: number,
      playlistType: string,
      playlists: [
        {
          attributes: {},
          Manifest
        }
      ],
      mediaGroups: {
        AUDIO: {
          'GROUP-ID': {
            default: boolean,
            autoselect: boolean,
            language: string,
            uri: string,
            instreamId: string,
            characteristics: string,
            forced: boolean
          }
        },
        VIDEO: {},
        'CLOSED-CAPTIONS': {},
        SUBTITLES: {}
      },
      dateTimeString: string,
      dateTimeObject: Date,
      targetDuration: number,
      totalDuration: number,
      discontinuityStarts: [number],
      segments: [
        {
          byterange: {
            length: number,
            offset: number
          },
          duration: number,
          attributes: {},
          discontinuity: number,
          uri: string,
          timeline: number,
          key: {
            method: string,
            uri: string,
            iv: string
          },
          map: {
            uri: string,
            byterange: {
              length: number,
              offset: number
            }
          },
          'cue-out': string,
          'cue-out-cont': string,
          'cue-in': string
        }
      ]
    }

    Including the Parser

    To include mpd-parser on your website or web application, use any of the following methods.

    <script> Tag

    This is the simplest case. Get the script in whatever way you prefer and include it on your page.

    <script src="//path/to/mpd-parser.min.js"></script>
    <script>
      var mpdParser = window['mpd-parser'];
      var parsedManifest = mpdParser.parse(manifest, manifestUrl);
    </script>

    Browserify

    When using with Browserify, install mpd-parser via npm and require the parser as you would any other module.

    var mpdParser = require('mpd-parser');
    
    var parsedManifest = mpdParser.parse(manifest, manifestUrl);

    With ES6:

    import { parse } from 'mpd-parser';
    
    const parsedManifest = parse(manifest, manifestUrl);

    RequireJS/AMD

    When using with RequireJS (or another AMD library), get the script in whatever way you prefer and require the parser as you normally would:

    require(['mpd-parser'], function(mpdParser) {
      var parsedManifest = mpdParser.parse(manifest, manifestUrl);
    });

    License

    Apache-2.0. Copyright (c) Brightcove, Inc

    Install

    npm i @dminc/mpd-parser

    DownloadsWeekly Downloads

    6

    Version

    0.10.11

    License

    Apache-2.0

    Unpacked Size

    519 kB

    Total Files

    52

    Last publish

    Collaborators

    • rraghav
    • rraghavdmi
    • yksingh