bitstream

Stream bits without aligning them to byte boundaries

npm install bitstream
2 downloads in the last week
4 downloads in the last month

Bitstream

Stream bits without aligning them to a byte boundary.

Usage

var bs = new Bitstream;
bs.pipe(target);

// Adds 1111111 (seven) bits (the first seven on 0xFF);
bs.addBits(new Buffer([ 0xFF ]), 7);

// Adds 10010 (five) bits
bs.addBits(new Buffer([ 0xD2 ]), 4);

// Adds 11111111 (8) bits (directly after the eleven previous bits)
bs.addByte(255);

// Aligns the stream to an 4 byte boundary (inserting zeros).
bs.align(4);

// Flush cached input (except for the last partial byte, if any)
bs.flush();

// Finish stream (flushes implicitly)
bs.end();

// Final output of the stream: 01111111 11111001 00001111 00000000
npm loves you