🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

hlx

A toolkit for processing HLS streams

0.0.1
latest
Version published
Maintainers
1
Created

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

hlx

A toolkit for processing HLS streams in Node.js

Features

  • It exposes gulp like interface for processing an HLS stream as Node's object mode stream.
  • The stream is represented as a series of data events of hlx objects.
  • To process the stream, users just need to insert their own Transform stream between the src and dest.

Install

NPM

Usage

Example 1 - Default source / destination

const hlx = require('hlx');
const {createDecryptor} = require('hlx-decryptor');
const decryptor = createDecryptor('AES-128');

// Store all decrypted files in /var/www/media/
hlx.src('https://foo.bar/sample.m3u8')
.pipe(decryptor)
.pipe(hlx.dest('/var/www/media/'));

Example 2 - Custom source

const hlx = require('hlx');
const {createReadStream} = require('hlx-src-webdav-pull');
const reader = createReadStream({
  url: 'http://foo.bar/webdav',
  user: {WebDAV user},
  pass: {WebDAV password}
});

// Store all decrypted files in /var/www/media/
hlx.src(reader)
.pipe(decryptor)
.pipe(hlx.dest('/var/www/media/'));

Example 3 - Custom destination

const hlx = require('hlx');
const {createReadStream} = require('hlx-dest-http-server');
const writer = createWriteStream({
  port: 8080,
  prefix: 'media',
  rootPath: '/var/www/media/'
});

// Host the stream at http://localhost:8080/media/sample.m3u8
hlx.src('https://foo.bar/sample.m3u8')
.pipe(decryptor)
.pipe(hlx.dest(writer));

API

src(location)

Creates a new stream.Readable object.

params

NameTypeRequiredDefaultDescription
locationstring or stream.ReadableYesN/AIt should be either of a local file path, a url of the playlist, or a custom source object.

return value

An instance of stream.Readable. When the location is a local file path or a url, the hlx-file-reader stream will be created. Otherwise, the passed readable stream will be returned back.

dest(location)

Creates a new stream.Writable object.

params

NameTypeRequiredDefaultDescription
locationstring or stream.WritableNpnullIt should be either of a local file path or a custom destination object.

return value

When the location is a local file path, the hlx-file-writer stream will be created. Otherwise, the passed writable stream will be returned back.

FAQs

Package last updated on 30 Jun 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts