hlx-file-writer

    0.0.16 • Public • Published

    Build Status Coverage Status Dependency Status Development Dependency Status Known Vulnerabilities XO code style

    hlx-file-writer

    A writable stream to save HLS playlists/segments as local files

    Features

    • Being used with other hlx objects, it provides a functionality to write every HLS related data (playlist and segments) to your local filesystem.
    • It determines the local path for each files based on the uri described in the HLS playlist.
    • The hostname contained in the uri will be ignored (e.g. "https://foo.bar/abc/def.m3u8" is translated into "{outputDir}/abc/def.m3u8")
    • If the uri is a file url, users can specify a root directory (inputDir) from which the file should be read (e.g. "file://path/to/abc/def.m3u8", inputDir="/path/to", is translated into "{outputDir}/abc/def.m3u8")

    Install

    NPM

    Usage

    const {createReadStream} = require('hlx-file-reader');
    const {createUrlRewriter} = require('hlx-url-rewriter');
    const {createWriteStream} = require('hlx-file-writer'); // file-writer
    const {createTerminator} = require('hlx-terminator')
     
    const src = createReadStream('https://foo.bar/sample.m3u8');
    const rewrite = createUrlRewriter();
    const save = createWriteStream({
      outputDir: '/var/www/media/',
      storePlaylist: true
    });
    const dest = createTerminator();
     
    // Write all playlists/segments to your local filesystem
    src.pipe(rewrite).pipe(save).pipe(dest)
    .on('error', err => {
      console.log(err.stack);
    });

    API

    The features are built on top of the Node's transform streams.

    createWriteStream([options])

    Creates a new TransformStream object.

    params

    Name Type Required Default Description
    options object No {} See below

    options

    Name Type Default Description
    inputDir string / The root directory from which all the files are read (This option is only used in case of file urls)
    outputDir string process.CWD() The root directory to which all the files are written
    storePlaylist boolean false If true, the playlist files are also stored as local files

    return value

    An instance of TransformStream.

    Install

    npm i hlx-file-writer

    DownloadsWeekly Downloads

    3

    Version

    0.0.16

    License

    MIT

    Unpacked Size

    7.04 kB

    Total Files

    5

    Last publish

    Collaborators

    • kuu