Schemas / Other
rig.visualizer.deck
v1.0.0 · stable maturity: stable 10 fields 0 required
Fields
| Field | Type | Meaning | |
|---|---|---|---|
presets |
array<entity> | optional | Optional. Playlist of rig.media.asset_ref entities (kind preset). Path and file format live on the asset |
index |
int | optional | Optional. Current playlist entry; 0 if absent |
playing |
bool | optional | Optional. Advance the deck; absent = true |
shuffle |
bool | optional | Optional. Pick the next preset at random; absent = true |
lockPreset |
bool | optional | Optional. Hold index; absent = false |
presetDuration |
float | optional | Optional. Seconds on one preset when switchOn is time |
transitionDuration |
float | optional | Optional. Crossfade seconds |
switchOn |
enumtime · onset · beat · note | optional | Optional. What may advance the deck: time, onset, beat, note. Absent = time |
analysis |
entity | optional | Optional. rig.audio.analysis to read. Absent = the host audio bus |
output |
entity | optional | Optional. rig.pixel.canvas (or raster) the present pack draws into |
Preset deck: which assets play, where they draw, and what may advance them. Format when present.
A present pack claims playlist entries it understands and ignores the rest. MilkDrop mesh size and hardcut stay in that leaf - they are not fields here.
Live main color and temperature of output are host cache from rig.picture.analysis pointed at that canvas. Do not store them on this component.
JSON Schema
Resolves at https://rig.works/schemas/rig.visualizer.deck.schema.json —
raw file.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://rig.works/schemas/rig.visualizer.deck.schema.json",
"title": "rig.visualizer.deck",
"type": "object",
"additionalProperties": false,
"properties": {
"presets": {
"type": "array",
"items": {
"$ref": "./_defs.schema.json#/$defs/entity"
}
},
"index": {
"$ref": "./_defs.schema.json#/$defs/int"
},
"playing": {
"$ref": "./_defs.schema.json#/$defs/bool"
},
"shuffle": {
"$ref": "./_defs.schema.json#/$defs/bool"
},
"lockPreset": {
"$ref": "./_defs.schema.json#/$defs/bool"
},
"presetDuration": {
"$ref": "./_defs.schema.json#/$defs/float"
},
"transitionDuration": {
"$ref": "./_defs.schema.json#/$defs/float"
},
"switchOn": {
"type": "string",
"enum": [
"time",
"onset",
"beat",
"note"
]
},
"analysis": {
"$ref": "./_defs.schema.json#/$defs/entity"
},
"output": {
"$ref": "./_defs.schema.json#/$defs/entity"
}
},
"x-rig-maturity": "stable"
}