MusiKraken
MusiKraken
Experimental MIDI Controller Construction Kit

OSC (Open Sound Control)

Open Sound Control (OSC) is a communication protocol which was developed as an alternative to MIDI. It is more flexible in that it can be used to transmit whatever parameter you want, but without this restriction, the receiver needs to know exactly how to translate these parameters to whatever it wants to do. There is no general specification of what should be sent to control which parameter in a DAW, for example, so everything needs to be setup manually.

So I took a different approach for OSC messages than for MIDI messages: Instead of routing the OSC messages through the different modules to treat every value the same way, the various "osc" output ports that the input modules have simply send raw sensor values out. So for example the hand tracking module sends the position of every tracked hand part out via OSC, not just the ones that are useful for music making. Or the ARKit Face Tracker sends all the 50+ parameters that ARKit reports.

The receiver can then for example draw the hand lines, or create own new parameters out of the raw values. This is mostly useful for creating visual effects, or controlling other things (like controlling the mouse cursor with your face), but can also be used for music making.

Ports:

osc:

Every OSC message that is sent to this port from any of the input modules will be sent to the receiver. It also converts MIDI events to OSC if you connect other ports to this.