diff options
-rw-r--r-- | README.md | 14 | ||||
-rw-r--r-- | unifest-17.cfg | 194 |
2 files changed, 206 insertions, 2 deletions
@@ -11,6 +11,12 @@ It allows the user to translate channels on one protocol into channels on anothe * Translate MIDI Notes into ArtNet * Translate OSC messages into MIDI +## Usage + +The MIDImonster takes as it's first argument the name of an optional configuration file +to use (`monster.cfg` is used as default if none is specified). The configuration +file syntax is explained in the next section. + ## Configuration Each protocol supported by MIDIMonster is implemented by a *backend*, which takes @@ -34,9 +40,10 @@ instance.target-channel = instance.source-channel ``` Assignments are one-way only, so to create a bi-directional mapping two assignments are needed. -An example configuration can be found in [monster.cfg](monster.cfg). +An example configuration file can be found in [unifest-17.cfg](unifest-17.cfg). -The options accepted by the implemented backends are documented in the next section. +## Backend documentation +This section documents the configuration options supported by the various backends. ### The `artnet` backend @@ -90,6 +97,9 @@ The MIDI backend provides read-write access to the MIDI protocol via virtual por | `write` | `DeviceName` | none | MIDI device to connect for output | MIDI device names may either be `client:port` portnames or prefixes of MIDI device names. +Run `aconnect -i` to list input ports and `aconnect -o` to list output ports. + +Each instance also provides a virtual port, so MIDI devices can also be connected with `aconnect <sender> <receiver>`. #### Channel specification diff --git a/unifest-17.cfg b/unifest-17.cfg new file mode 100644 index 0000000..0c43c1f --- /dev/null +++ b/unifest-17.cfg @@ -0,0 +1,194 @@ +[backend midi] +name = MIDIMonster + +[backend artnet] +bind = * 6454 +net = 0 + +; XLaser environment +[artnet claudius] +net = 0 +uni = 0 +output = true + +; MIDI input devices +[midi pad] +read = Launchpad +write = Launchpad + +[midi bcf1] +read = 20:0 +write = 20:0 + +[midi bcf2] +read = 36:0 +write = 36:0 + +[midi lc1] +read = 24:0 +write = 24:0 + +[midi lc2] +read = 32:0 +write = 32:0 + +; Output MIDI via OUT A on BCF +[midi out] +write = 36:1 +read = 36:1 + +[map] +; ArtNet +claudius.1 = lc1.cc0.1 +claudius.2 = lc1.cc0.2 +claudius.3 = lc1.cc0.3 +claudius.4 = lc1.cc0.4 +claudius.5 = lc1.cc0.5 +claudius.6 = lc1.cc0.6 +claudius.7 = lc1.cc0.7 +claudius.8 = lc1.cc0.8 +claudius.9 = lc1.cc0.9 +claudius.10 = lc1.cc0.10 +claudius.11 = lc1.cc0.11 +claudius.12 = lc1.cc0.12 +claudius.13 = lc1.cc0.13 +claudius.14 = lc1.cc0.14 +claudius.15 = lc1.cc0.15 +claudius.16 = lc1.cc0.16 + +; BCF Fader +out.note0.0 = bcf1.cc0.81 +out.note0.1 = bcf1.cc0.82 +out.note0.2 = bcf1.cc0.83 +out.note0.3 = bcf1.cc0.84 +out.note0.4 = bcf1.cc0.85 +out.note0.5 = bcf1.cc0.86 +out.note0.6 = bcf1.cc0.87 +out.note0.7 = bcf1.cc0.88 +out.note0.8 = bcf2.cc0.81 +out.note0.9 = bcf2.cc0.82 +out.note0.10 = bcf2.cc0.83 +out.note0.11 = bcf2.cc0.84 +out.note0.12 = bcf2.cc0.85 +out.note0.13 = bcf2.cc0.86 +out.note0.14 = bcf2.cc0.87 +out.note0.15 = bcf2.cc0.88 + +; LC Rotary +out.note0.16 = lc1.cc0.1 +out.note0.17 = lc1.cc0.2 +out.note0.18 = lc1.cc0.3 +out.note0.19 = lc1.cc0.4 +out.note0.20 = lc1.cc0.5 +out.note0.21 = lc1.cc0.6 +out.note0.22 = lc1.cc0.7 +out.note0.23 = lc1.cc0.8 +out.note0.24 = lc1.cc0.9 +out.note0.25 = lc1.cc0.10 +out.note0.26 = lc1.cc0.11 +out.note0.27 = lc1.cc0.12 +out.note0.28 = lc1.cc0.13 +out.note0.29 = lc1.cc0.14 +out.note0.30 = lc1.cc0.15 +out.note0.31 = lc1.cc0.16 +out.note0.32 = lc2.cc0.1 +out.note0.33 = lc2.cc0.2 +out.note0.34 = lc2.cc0.3 +out.note0.35 = lc2.cc0.4 +out.note0.36 = lc2.cc0.5 +out.note0.37 = lc2.cc0.6 +out.note0.38 = lc2.cc0.7 +out.note0.39 = lc2.cc0.8 +out.note0.40 = lc2.cc0.9 +out.note0.41 = lc2.cc0.10 +out.note0.42 = lc2.cc0.11 +out.note0.43 = lc2.cc0.12 +out.note0.44 = lc2.cc0.13 +out.note0.45 = lc2.cc0.14 +out.note0.46 = lc2.cc0.15 +out.note0.47 = lc2.cc0.16 + +; LC Button +out.note0.48 = lc1.note0.0 +out.note0.49 = lc1.note0.1 +out.note0.50 = lc1.note0.2 +out.note0.51 = lc1.note0.3 +out.note0.52 = lc1.note0.4 +out.note0.53 = lc1.note0.5 +out.note0.54 = lc1.note0.6 +out.note0.55 = lc1.note0.7 + +out.note0.56 = lc2.note0.0 +out.note0.57 = lc2.note0.1 +out.note0.58 = lc2.note0.2 +out.note0.59 = lc2.note0.3 +out.note0.60 = lc2.note0.4 +out.note0.61 = lc2.note0.5 +out.note0.62 = lc2.note0.6 +out.note0.63 = lc2.note0.7 + +; Launchpad +out.note0.64 = pad.note0.0 +out.note0.65 = pad.note0.1 +out.note0.66 = pad.note0.2 +out.note0.67 = pad.note0.3 +out.note0.68 = pad.note0.4 +out.note0.69 = pad.note0.5 +out.note0.70 = pad.note0.6 +out.note0.71 = pad.note0.7 +out.note0.72 = pad.note0.16 +out.note0.73 = pad.note0.17 +out.note0.74 = pad.note0.18 +out.note0.75 = pad.note0.19 +out.note0.76 = pad.note0.20 +out.note0.77 = pad.note0.21 +out.note0.78 = pad.note0.22 +out.note0.79 = pad.note0.23 +out.note0.80 = pad.note0.32 +out.note0.81 = pad.note0.33 +out.note0.82 = pad.note0.34 +out.note0.83 = pad.note0.35 +out.note0.84 = pad.note0.36 +out.note0.85 = pad.note0.37 +out.note0.86 = pad.note0.38 +out.note0.87 = pad.note0.39 +out.note0.88 = pad.note0.48 +out.note0.89 = pad.note0.49 +out.note0.90 = pad.note0.50 +out.note0.91 = pad.note0.51 +out.note0.92 = pad.note0.52 +out.note0.93 = pad.note0.53 +out.note0.94 = pad.note0.54 +out.note0.95 = pad.note0.55 +out.note0.96 = pad.note0.64 +out.note0.97 = pad.note0.65 +out.note0.98 = pad.note0.66 +out.note0.99 = pad.note0.67 +out.note0.100 = pad.note0.68 +out.note0.101 = pad.note0.69 +out.note0.102 = pad.note0.70 +out.note0.103 = pad.note0.71 +out.note0.104 = pad.note0.80 +out.note0.105 = pad.note0.81 +out.note0.106 = pad.note0.82 +out.note0.107 = pad.note0.83 +out.note0.108 = pad.note0.84 +out.note0.109 = pad.note0.85 +out.note0.110 = pad.note0.86 +out.note0.111 = pad.note0.87 +out.note0.112 = pad.note0.96 +out.note0.113 = pad.note0.97 +out.note0.114 = pad.note0.98 +out.note0.115 = pad.note0.99 +out.note0.116 = pad.note0.100 +out.note0.117 = pad.note0.101 +out.note0.118 = pad.note0.102 +out.note0.119 = pad.note0.103 +out.note0.120 = pad.note0.112 +out.note0.121 = pad.note0.113 +out.note0.122 = pad.note0.114 +out.note0.123 = pad.note0.115 +out.note0.124 = pad.note0.116 +out.note0.125 = pad.note0.117 +out.note0.126 = pad.note0.118 +out.note0.127 = pad.note0.119 |