Schemas / I/O
rig.io.sacn
v0.31.0 · draft 8 fields 1 required
Fields
| Field | Type | Meaning | |
|---|---|---|---|
universe |
integer1 – 63999 | required | 1-63999. First (or only) universe |
direction |
enumin · out | optional | Optional. out (transmit) or in (receive); absent = out |
universeCount |
integer1 – 63999 | optional | Optional. Contiguous universes starting at universe; absent = 1 |
startChannel |
integer1 – 512 | optional | Optional. 1-512; first DMX slot used in the universe; absent = 1 |
host |
string | optional | Optional. Unicast peer; absent means multicast for that universe |
fps |
float | optional | Optional. Send rate when direction is out; absent means the host's frame rate |
enabled |
bool | optional | Optional. Whether the endpoint is running; absent = true |
uvMap |
entity | optional | Optional. Entity carrying rig.led.uv_map - pixel output path; unused for plain DMX receive |
E1.31 (sACN) over the network. Format when present.
When direction is out with a UV map, this completes the LED path already covered by rig.led.uv_map and rig.io.serial: the UV map says where each pixel samples the canvas, this says where the bytes go. Channel count then follows from the pixel count of the referenced UV map.
When direction is in, the host writes received slots into its DMX buffer (see also rig.io.dmx). universeCount names how many consecutive universes to listen to from universe.
A fixture spanning more than one universe uses one entity per universe when mapping fixtures; a receive listener may instead set universeCount.
Colour order (RGB versus GRB and friends) is a property of the fixture, not of the document, and is not carried here.
JSON Schema
Resolves at https://rig.works/schemas/rig.io.sacn.schema.json —
raw file.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://rig.works/schemas/rig.io.sacn.schema.json",
"title": "rig.io.sacn",
"type": "object",
"additionalProperties": false,
"properties": {
"universe": {
"type": "integer",
"minimum": 1,
"maximum": 63999
},
"direction": {
"type": "string",
"enum": [
"in",
"out"
]
},
"universeCount": {
"type": "integer",
"minimum": 1,
"maximum": 63999
},
"startChannel": {
"type": "integer",
"minimum": 1,
"maximum": 512
},
"host": {
"$ref": "./_defs.schema.json#/$defs/string"
},
"fps": {
"$ref": "./_defs.schema.json#/$defs/float"
},
"enabled": {
"$ref": "./_defs.schema.json#/$defs/bool"
},
"uvMap": {
"$ref": "./_defs.schema.json#/$defs/entity"
}
},
"required": [
"universe"
]
}