A binary stream multiplexer. Stream multiple streams of binary data over a single binary stream.
A binary stream multiplexer. Stream multiple streams of binary data over a single binary stream. Like mux-demux but faster since it only works with binary streams.
Returns a new multiplexer. You can use this to create sub-streams. All data written to sub-streams will be emitted through this. If you pipe a multiplex instance to another multiplex instance all substream data will be multiplexed and demultiplexed on the other end.
onStream will be called with
(stream, id) whenever a new remote sub-stream is created with an id that hasn't already been created with
You can optionally set:
opts.error- forward errors on individual streams
opts.lazy- only open a channel when you start writing to it
Creates a new sub-stream with an optional whole string
id (default is the stream channel id).
Sub-streams are duplex streams.
Emitted when the outer stream encounters invalid data
Emitted when encoding of data fails (opts.error must be set to true)
var multiplex = require'multiplex'var plex1 = multiplexvar stream1 = plex1createStreamvar stream2 = plex1createStreamvar plex2 = multiplexstreamon'data'console.log'data' id ctoStringplex1pipeplex2stream1write'stream one!'stream2write'stream two!'
multiplex is an OPEN Open Source Project. This means that:
Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project.
See the CONTRIBUTING.md file for more details.
multiplex is only possible due to the excellent work of the following contributors: