Hi! I've been an avid user of BMT for a number of years now, but mainly for lower level translations. I recently acquired a Madrona Labs Soundplane which is an expressive controller that sends out OSC messages in 3 dimensions. The client app for the Soundplane has a built in osc to midi translator and outputs midi, both in MPE mode and single channel mode.
I generally use the OSC output when possible but I'd like to explore using the Soundplane as a flexible midi controller in Ableton, which only has single channel midi support at the moment. Here are a couple of issues that I'd like to overcome using BMT but I could use some guidance.
1. Convert the pressure output to a CC with highest value priority
The Soundplane client only outputs polyphonic key pressure which ableton doesn't recognize. It's simple enough to convert poly key pressure to channel pressure using a translator but for some vst's like my orchestral libraries, I can only map cc's to sliders (i.e. dynamics slider). I am able to translate this poly key pressure to a single channel cc message but it always jumps in value to the next key press, which is generally lower value, as pressure always starts from 0, even when the earlier key press is still outputting a high pressure value - which results in the cc being held high and then jumping down to a low value when I bring in another note. What I'd love is for there to be some way to compare the incoming pressure value with the existing one being output and ignore it if it's lower, but take over when it's higher. Sort of a universal Highest Value priority on simultaneous key presses.
2. Have some sort of release time, or smoothing to the CC value
Assuming #1 can be done (of course it can, it's BMT!) when I release a key that had the pressure at a high value, the cc value jumps down to 0. I'd love to be able to have a release value that slows ramp down to 0. Ideally this ramping down cc value would still be used in the Highest Value priority from #1. I think I've seen some other examples of CC smoothing via delays in the forum so I will keep poking around.
3. Translator to help ensure note off data
One of the downsides of the soundplane's midi output is that I find that I have occasional stuck notes, from a lack of a registered note off message. It generally happens with some quick on-off messages. I would like to perhaps leverage the pressure data so that when it falls below a certain value, that BMT would transmit a note off message for that key press. Perhaps the best way to do this is to have the soundplane in midi MPE mode and when the pressure value for that particular channel falls below a certain threshold, a note off message is sent for all notes on that channel? Otherwise, I'm not sure how it would be note value aware. In fact, I'm not sure how to do this at all but if there's a way to ensure a note off, that would be huuuuuge for me because it's not a reliable midi controller right now and I have to edit out stuck notes.
All of these midi messages would have to be output from BMT as single channel midi messages as Ableton doesn't have any sort of MPE support yet. Any guidance on how to best tackle these issues would be greatly appreciated!! Thank you so much for an amazing product!