MIDI CC Filtering?

VST, AU, AAX, CLAP, etc. Plugin Virtual Effects Discussion
Post Reply New Topic
RELATED
PRODUCTS

Post

Hi Everyone,

I also posted this in the Host subforum, as I don't know which is more appropriate - I apologize for the duplication.

I have a Kore 2 controller that I would like to use as a generic midi controller. The problem (which is apparently common for these) is that when I touch one knob (for example, knob #2), the device sends midi messages at random to knob #1, changing the value of knob #1 slightly (maybe by one or two numbers). I know the CC# assigned to knob #1, and thus I thought that if there was a way to filter out messages sent to that CC# until I choose to twist knob #1, that might solve my problem.

Is there a VST that does this type of conditional MIDI filtering?

While I see various midi CC filters available (for example, pizmidi), I can't seem to figure out how to filter out unwanted midi CCs UNTIL I want to change that CC value by twisting knob #1. One idea I had would be if there was a filter that blocked the messages on knob #1 that were less than a certain "velocity", or rate of change. In other words, twisting the knob should allow the CCs through, but not a slower rate of change as seems to be happening here when the messages are being sent automatically. Or, perhaps a way to filter out all CC messages on all CC#s until I twist one of the knobs, thereby "opening" the filter on that knob for a time. The third idea I had would be to filter out any change in CC value less than X - as I mentioned, the messages that are being sent by the unit are usually one or two units in value, and I if I could filter out value changes <2, for example, that would probably solve the problem.

Any help you could provide would be appreciated, and thanks in advance!

Post

This is not going to be easy to fix no matter what you do.

If you are on Mac, check out MidiFire. It's not a VST. It is a virtual MIDI device that is a swiss army knife of MIDI manipulation. You can wire together MIDI inputs / outputs and modules to do practically anything you can imagine, including arbitrary manipulation using their scripting language. The result is presented as a MIDI device that you would then select in your DAW.

I use this, for example, with my DX7 to scale the velocity to the correct range, since the original DX7 only transmitted 0-100.

However, what you are describing would need a rather complex script to pull off. I'm honestly not sure if that's going to be possible in MidiFIre. The scripting language is a stream processor, and to detect and adjust for rate of change on a CC would require the ability to save state over time.
Last edited by teilo on Wed Feb 08, 2023 7:12 pm, edited 2 times in total.

Post

Thank you very much for your thoughts! I am actually on Windows, but in looking around I might give Bome Midi Translator a shot - it appears that it may be able to handle some complex scripting similar to what you describe.

Post

The other option is Pure Data. See here and here.

I have no doubt whatsoever that Pure Data can do this, but Pure Data is non-trivial to use. It's free and cross platform (Mac, Windows, Linux), but you really need to be more of a developer to use it. Think doing DSP work in Reaktor or Max level stuff.

Post

How about Reaper natively helping out?

Kenny as usual has all the answers.
https://youtu.be/zFerMQOECWQ

Bomes would work, but it's a steep learning curve, well at least it was for me.

Post

Thank you both! I did see that video, but I don't think that particular filter is sophisticated enough to do what I need. I think there may be other Reaper-native MIDI filters available, though, so I will check those out.

Post

You might be able to pay a Reaper scripter to create something? Could make a post in the subforum:
https://forum.cockos.com/forumdisplay.php?f=3

Post

midi relink might work

Post

Thanks everyone. I am starting down the rabbit hole with Bome Midi Translator with very promising results!

Post

any progress? I have similar needs and am wondering if reaper scripting reascript could do midi filtering and transforms by script.

Post

Blue Cat remote Control perhaps - from the manual
"Use the Remote Control plug- in as a MIDI or automation mapper
The idea here is to use the plugin to convert MIDI CC messages received as input to the output. The plugin lets you change the following properties of the MIDI CC events:
MIDI Channel.
MIDI CC Number.
Values range.
Response curve.
For example it is possible to transform MIDI CC messages coming on channel 3 number 64 to messages on channel 1 number 5 with a smaller range and a logarithmic response curve.

Post

I can get Blue Cat Remote Control to successfully remap MIDI CCs as needed for my application. I am using Reaper. The problem is that my controller keyboard is still sending the original MIDI CCs to my synthesizers, with the result that both the original CC (that I am mapping from) AND the remapped CC are sent to my hardware MIDI synthesizers. Apparently Blue Cat Remote Control doesn’t pass through MIDI note events, so I need to have two Reaper MIDI tracks for each synthesizer - one for the keyboard controller data and the other for Blue Cat Remote Control.

Might someone know of a solution?

Post

X the Unknown wrote: Mon Aug 28, 2023 12:43 am I can get Blue Cat Remote Control to successfully remap MIDI CCs as needed for my application. I am using Reaper. The problem is that my controller keyboard is still sending the original MIDI CCs to my synthesizers, with the result that both the original CC (that I am mapping from) AND the remapped CC are sent to my hardware MIDI synthesizers. Apparently Blue Cat Remote Control doesn’t pass through MIDI note events, so I need to have two Reaper MIDI tracks for each synthesizer - one for the keyboard controller data and the other for Blue Cat Remote Control.

Might someone know of a solution?
Try setting Remote Control midi output setting to 'Merges with Midi bus'

Post Reply

Return to “Effects”