Reading in all selected MIDI info on the piano roll

Hi guys,

I’m new here trying my hand at making a MIDI FX plugin. I have general programming experience, though its been awhile since I’ve used c++. I’ve only spent a little bit in documentation and looking at the example plugins for reference so forgive me if I miss something glaringly obvious.

What I’m trying to do is make a MIDI effect to read in all the highlighted MIDI info on the current track and at the press of a button, randomize the velocity.

I’m reading some stuff on iMidiMsg, but those seem to be more for plugins processing data as it is being played in the DAW. I believe this is where I would be messing with MIDI once I have it.

I just need to get the MIDI notes of what is highlighted. Any suggestions of where to look or how to even accomplish this?

(As an added bonus, if I can figure out how to grab all the notes the user has selected, then I do want to be able to shift them around randomly by a subdivision amount (like a humanization effect). Unsure if there’s a way to alter the timestamp that a specific MIDI note is played)

Audio Plug-ins are not able to do such things. Some DAW’s such as Reaper may allow you to access the highlighted MIDI notes (See e.g. here), but VST,AU etc don’t allow that

hmm well that is a shame, I am using ableton right now, but i do have reaper installed. Don’t know if its worth the switch when i’m still experimenting with this software

Thanks for the info though!

You might be able to use Max 4 Live for that