fmp4.js

0.2.2 • Public • Published

A Javascript library to parse ISO Base Media File Format (MPEG-4 Part 12) ISO/IEC 14496-12

Usage (Node JS)

npm install --save fmp4.js

The library implements the Writable stream interface and acts a a "sink". For example to download and parse an MP4 fragment:

const request = require("request");
const fMP4 = require("fmp4.js");

request.get("http://example.com/video.dash")
.pipe(fMP4.parse())
.on("finish", function() {

  // Obtain all boxes found in the fragment
  const boxes = fMP4.boxes;

  // Parse each box
  for (let i = 0; i < boxes.length; i++) {
    let parsedBox = boxes[i].parse(); // MP4Box

    /**
     *
     * MP4Box {
     *   hdr: { size, type, hdrsize },
     *   $type: {
     *     key/value pairs,
     *     array of child boxes (if available)
     *   }
     * }
     */
    console.log(parsedBox);
  }
});

An example implementation of the library that parses and dump the contents of an ISOBMFF file is included:

node mp4dump.js test/support/testassets/cmaf_chunk.mp4

Readme

Keywords

none

Package Sidebar

Install

npm i fmp4.js

Weekly Downloads

3

Version

0.2.2

License

MIT

Unpacked Size

1.62 MB

Total Files

12

Last publish

Collaborators

  • martinstark
  • jobi
  • bwallberg