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.

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 0.0.16
    1
    • latest

Version History

Package Sidebar

Install

npm i hlx-file-writer

Weekly Downloads

1

Version

0.0.16

License

MIT

Unpacked Size

7.04 kB

Total Files

5

Last publish

Collaborators

  • kuu