Schemas / Music
rig.music.midi_input
v0.31.0 · draft 4 fields 0 required
Fields
| Field | Type | Meaning | |
|---|---|---|---|
portName |
string | optional | Platform port name as reported by the host |
portIndex |
uint | optional | Host API port index |
open |
bool | optional | Optional. Whether the document expects this port open; absent = true |
channel |
integer0 – 15 | optional | Optional. 0-15; absent means omni |
MIDI input port binding. Format when present.
Ship whichever identifier the host API exposes - portName when it names ports, portIndex when it numbers them; at least one must be present.
The mirror of rig.music.midi_output, and it carries the same caveat: both identifiers are machine-local. Moving a document between machines will not find the same port, and a host should fail visibly rather than silently bind to the wrong one.
Incoming notes and controller values are host state and are never serialized. To route a controller onto a property, use rig.mod.binding rather than adding mappings here.
JSON Schema
Resolves at https://rig.works/schemas/rig.music.midi_input.schema.json —
raw file.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://rig.works/schemas/rig.music.midi_input.schema.json",
"title": "rig.music.midi_input",
"type": "object",
"additionalProperties": false,
"properties": {
"portName": {
"$ref": "./_defs.schema.json#/$defs/string"
},
"portIndex": {
"$ref": "./_defs.schema.json#/$defs/uint"
},
"open": {
"$ref": "./_defs.schema.json#/$defs/bool"
},
"channel": {
"type": "integer",
"minimum": 0,
"maximum": 15
}
},
"allOf": [
{
"anyOf": [
{
"required": [
"portName"
]
},
{
"required": [
"portIndex"
]
}
]
}
]
}