id3-ts-lib

1.2.0 • Public • Published

ID3-TS-LIB

The fat-free ID3-only MPEG2TS segment generator library!

Installation

As a library (into your fancy project):

$> npm install @brightcove/id3-ts-lib

Usage:

const fs = require('fs');

// The whole library exposes just a single function:
const generateID3Segment = require('id3-ts-lib');

// If a PID is falsey, then that track will not be included in the generated PMT
const options = {
  pmtPid: 0x100,
  id3Pid: 0x103,
  videoPid: null,
  audioPid: null,
  id3PTS: 282743,
  data: 'This is just some example payload...',
};

// The function returns a promise that resolves to a buffer
generateID3Segment(options).then((segment) => {
  fs.writeSync('test.ts', segment);
});

As a very rudimentary executable:

$> npm install -g @brightcove/id3-ts-lib

$> id3-ts 'This is just some example payload...' > test.ts

Performance

The entire segment construction process is performed using a single Buffer allocation. All operations are done in place including the ID3-creation which is "chunked" so that the ID3 can be created in-place "around" the TS packet headers. As a result, this code can generate an entire segment for a 4kb payload in about 9.6µs!

Dependencies (0)

    Dev Dependencies (4)

    Package Sidebar

    Install

    npm i id3-ts-lib

    Weekly Downloads

    9

    Version

    1.2.0

    License

    none

    Unpacked Size

    65.2 kB

    Total Files

    21

    Last publish

    Collaborators

    • areis10
    • vmnavarro
    • dkingston
    • alfredo-reyes
    • jterranova
    • pradeep.vernekar
    • jfloresbc
    • mlopez.b
    • vasu.p
    • ttabrilla-bc
    • msivalls
    • sstevanus
    • rwbarber2
    • kaustubh-thube-brightcove
    • rwinger
    • bcc-bfranklin
    • apenigalapati
    • lmaultsby
    • sravan.pbr
    • agrojas-bc
    • ijunaidf
    • mgoncalves
    • mfregozo
    • arevelo
    • madhu_g
    • hugocjim
    • daniel_campos
    • kevin.schick
    • m.morrison
    • uomar
    • abarstowbc
    • sbarathan
    • kpandiyarajan
    • rburnham
    • imorones
    • walterseymourbc
    • ddashkevich
    • albertogomez
    • gestrada-br
    • amillerbrightcove
    • lvohra
    • mcho-bc
    • awaldron
    • fsalazarbc
    • dawnpacko
    • ldominguez
    • bc-srimron-soutter
    • rsilva_brightcove
    • joeylesh
    • lmelchorx1
    • juan-sanchez
    • eolvera
    • cloewer_bc
    • carredondo
    • brianhsu
    • niklagbrightcove
    • tsraveling_bc
    • bcbclifford
    • bc-acgarcia
    • adavila1
    • vaishalijayaraman
    • kreynolds
    • bgs-devops
    • albinjohnson
    • rtezera
    • bcmneil
    • randresf
    • v.kozlov_bc
    • nagendra_m
    • michaelmccarthybc
    • poneill-bcov
    • mdeltorobcov
    • jmohneycove
    • inbc01
    • aperezbrightcove
    • ireyes94
    • brightcove-admin
    • tedk
    • abradley-brightcove
    • bc-alive
    • lasanchezc
    • marguinbc
    • brightcove-user
    • kmason
    • cbarstow
    • hikeh
    • myerramalla
    • pdias
    • jwhisenant
    • ebertaud
    • oespinosac
    • dsalnikov
    • sharanya.muruganandam
    • vikaskumar.gajula
    • xgarcia_npm
    • jguerra
    • rjune
    • jonbwalsh
    • khaipham
    • wswanbeck
    • gastafurov
    • adalwani
    • ekelson-bcove
    • syseng
    • mcarreiro
    • elbadawimustafa
    • hwoodbury
    • jblaker
    • bcmauleon
    • paco_oblea_bc
    • jsepulveda
    • biswaranjan
    • barroyo
    • bmartinez
    • bc-jcarlson
    • eledezma
    • jcueto
    • erodrigues
    • psousa
    • marcogaray
    • javibright
    • bcpsalas
    • etobin
    • ackbabe
    • cvillasenor
    • omartinez
    • mgonzalez_bc
    • pdohertybcov
    • muthukumar.bc
    • bzizmond
    • jmpmacedo
    • scorreia
    • lescorcio
    • cavieira
    • arunjeyaprasad
    • bvilvanathan
    • anand.gangadharan
    • rociosantos
    • agarciabcov
    • attinder
    • lauralopez
    • skumar85
    • hrodriguez2
    • jasilvaantonio
    • palvarezbc
    • ericramos
    • carlosabajo
    • ingrid.s.cruz
    • luis_fernando_lopez_ruiz
    • vishal64
    • tresa.baji
    • luis.garcia.brightcove
    • rodrigofdz
    • pgutierrezgil
    • harish17
    • jjeyaprakash
    • rrajendran1698
    • jlomeli
    • sjimenez
    • rwenger_brightcove
    • rujordan
    • stuartmh
    • jherrerabcov
    • mshiwal
    • ptamizh
    • akamalakkannan
    • roman-bc
    • tnwanna
    • bsahlas.npm
    • dherrera1109
    • hswaminathan
    • echengbc
    • sbarrettbc
    • imbcmdth
    • gkatsev