artnet-protocol
v0.2.1
Published
Protocol implementation for ArtNet
Downloads
53
Readme
Node ArtNet Protocol
ArtNet protocol implementation in Nodejs. The goal is to make a protocol implementation that is as complete and usable as possible. Use-cases for this library are virtual ArtNet clients such as ArtNet Hue Entertainment, or full ArtNet/DMX controllers.
Features
- Automatic discovery using
ArtPoll
/ArtPollReply
- Low-level packet encoder/decoder which can be used as a binary protocol library without all other functionality.
- Sending/receiving of DMX data (
ArtDmx
)
Usage
Install Node ArtNet Protocol using NPM:
$ npm install --save node-artnet-protocol
Code usage:
import { ArtNetController } from 'artnet-protocol/dist';
import { ArtDmx } from 'artnet-protocol/dist/protocol';
const controller = new ArtNetController();
controller.bind('0.0.0.0');
// The controller is now listening and responding to discovery traffic
// Send DMX data (Sequence 0, Physical port 0, Universe 0.
controller.sendBroadcastPacket(new ArtDmx(0, 0, 0, [255, 0, 0]));
// Or if you want to receive DMX data
controller.on('dmx', (dmx) => {
// dmx contains an ArtDmx object
console.log(dmx.universe, dmx.data);
});
Reference
- ArtNet protocol specification: https://artisticlicence.com/WebSiteMaster/User%20Guides/art-net.pdf