-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Description
Hi,
Looks like a very interested library... Unfortunately, I was't able to demux the ts file (tried few of them).
I used your sample, providing the ts file
var tesladon = require('tesladon');
var H = require('highland');
var fs = require('fs');
H(fs.createReadStream(process.argv[2]))
.pipe(tesladon.bufferGroup(188))
.pipe(tesladon.readTSPackets())
.pipe(tesladon.readPAT(true))
.pipe(tesladon.readPMTs(true))
.pipe(tesladon.readPESPackets(true))
.filter(x => x.type !== 'TSPacket')
.each(H.log);
I'm getting this error.
Object {type: "ProgramAssociationTable", pid: 0, tableID: "program_association_section", transportStreamID: 1, versionNumber: 0, …}
index.js:4871
TypeError: push is not a function
at Object.push (d:\WorkTmp\nodemux\node_modules\tesladon\src\readPMTs.js:29:19)
at setupStreams (d:\WorkTmp\nodemux\node_modules\tesladon\src\readPMTs.js:61:29)
If I'm commenting out the readPMTs function call, it works.
var tesladon = require('tesladon');
var H = require('highland');
var fs = require('fs');
H(fs.createReadStream(process.argv[2]))
.pipe(tesladon.bufferGroup(188))
.pipe(tesladon.readTSPackets())
.pipe(tesladon.readPAT(true))
//.pipe(tesladon.readPMTs(true))
.pipe(tesladon.readPESPackets(true))
.filter(x => x.type !== 'TSPacket')
.each(H.log);
It is mentioned that
readPMTs() stage only works after the readPATs() stage as it uses the PAT objects to find the pids used for the PMTs.
But, if you capture TS stream, this cannot be guaranteed. Anyhow, is that the reason it fails?
Thanks,
Alex
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels