I’m working on a project where I’m trying to get Sensory Percussion to talk to a game engine via OSC. I was wondering if anyone had a list of what the different values correspond to? Right now, my output looks like this:
The first few values are the only ones that may be of use at this point. They are [command, velocity, note, transpose, channel, padID, ...] The rest are internal values that are subject to change and aren’t as useful outside of the software.
Instead of capturing the sensor input’s messages, one alternative is to use the MIDI gen modules (CC knobs with assignments and/or pads mapped to midi notes) and then you can capture those via OSC on /obsidian/hwout/midi1. This way you can create assignments (timbre ranges, speed, etc) and capture the output easily.
We have some experimental features that we may release that open up OSC a bit and make it more flexible. But, for now its best to just capture messages coming in/out of the hardware address space which is stable (i.e. doesn’t use variable UUIDs which can change).
The first few values are the only ones that may be of use at this point. They are [command, velocity, note, transpose, channel, padID, ...]
I’m having a bit of trouble interpreting those values. I understand command mostly, but I don’t know what values it could have other than play. Velocity makes sense, but I don’t understand note, transpose and channel, as those are MIDI terminology so I don’t see how they fit in the context of OSC (is it just transmitting midi data over OSC assuming there are MIDI get modules present?). Would padID just be giving you the hardware input number of the drum you hit? Also, if any of those values have become more usable since February, I’d love to know.
We have some experimental features that we may release that open up OSC a bit and make it more flexible.
Would you be willing to elaborate a little on what these experimental features might include and when they might be released? It would be cool if there was an OSC gen module like there is for midi, though I’m not a super experienced programmer so I don’t know how difficult that would be to implement.