MIDI CC Filtering?
- KVRAF
- Topic Starter
- 2356 posts since 3 Mar, 2010
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!
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!
- KVRAF
- 1877 posts since 30 Mar, 2008 from MN, USA
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.
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.
CLAP Software Database: https://clapdb.tech. KVR Discussion Topic.
- KVRAF
- Topic Starter
- 2356 posts since 3 Mar, 2010
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.
- KVRAF
- 1877 posts since 30 Mar, 2008 from MN, USA
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.
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.
CLAP Software Database: https://clapdb.tech. KVR Discussion Topic.
-
- KVRian
- 624 posts since 12 Sep, 2007
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.
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.
- KVRAF
- Topic Starter
- 2356 posts since 3 Mar, 2010
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.
- KVRian
- 670 posts since 7 May, 2002 from Phoenix, Arizona, USA
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
https://forum.cockos.com/forumdisplay.php?f=3
-
- KVRer
- 26 posts since 8 Jul, 2021
midi relink might work
-
- Banned
- 580 posts since 27 May, 2023
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.
"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.
-
- KVRer
- 1 posts since 28 Aug, 2023
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?
Might someone know of a solution?
-
- Banned
- 580 posts since 27 May, 2023
Try setting Remote Control midi output setting to 'Merges with Midi bus'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?