clj-artnet.impl.protocol.codec.domain.dmx
Encode/decode for DMX family packets: ArtDmx, ArtNzs, ArtVlc, ArtSync. These are the hot-path packets that use flyweight types for zero allocation.
decode-artnzs
(decode-artnzs buf)Decode ArtNzs packet from buffer (including VLC detection).
encode-artdmx!
(encode-artdmx! buf {:keys [sequence physical net sub-net universe data], :or {sequence 0, physical 0, net 0, sub-net 0, universe 1}})Encode ArtDmx packet into buffer.
encode-artnzs!
(encode-artnzs! buf {:keys [sequence start-code net sub-net universe data], :or {sequence 0, net 0, sub-net 0, universe 1}})Encode ArtNzs packet into buffer.
encode-artvlc!
(encode-artvlc! buf {:keys [sequence net sub-net universe vlc], :or {sequence 0, net 0, sub-net 0, universe 1}, :as packet})Encode ArtVlc packet (transmitted as ArtNzs with start code 0x91).