Jump to content

Scale MIDI velocity down based on note


fyankai

Recommended Posts

Hi all

 

I'm fairly new to Logic Pro X and can't seem to find an answer to this question anywhere...

 

I've got a software instrument (NI Scarbee running in Kontakt Player) on which the higher notes come out too loud. I've been using it live and have been using Mainstage's Note Input (under Velocity Scaling in that channel's Midi Input panel) to tame the top end. It basically reduces the velocity parameter smoothly, across the keyboard so that only the top end is effected. See screenshot...

 

1367832711_ScreenShot2014-07-16at20_00_52.png.03487d47e3c2f5ee42159224e3ca0806.png

 

Is there a way to do the same thing in Logic Pro X? I need it to happen as I'm playing, rather than as a post-production thing, and to only apply to the channel that that instrument is on.

 

Thanks in advance for any help with this.

 

Frank

Link to comment
Share on other sites

Thanks for replying, Jordi.

 

Does Note Range Min and Max not refer to which velocities get processed? (Just guessing as they have values of 0-127.) Or if those do let you target just one area of the keyboard, wouldn't that make it an on/off thing (bottom part of keyboard doesn't get compressed, top part gets compressed uniformly) rather than gradually having more effect as you go up the keyboard?

 

Just to clarify, I need this to kick in gradually from note D5, with the velocities getting more compressed as you go up to F6 and then levelling out. And ideally I'd like to be able to draw any shape across the keyboard to even out patches that have louder/quieter areas.

 

Obviously it'd be nice to be able to do this from within the virtual instrument, but NI Scarbee is pretty basic control-wise.

Link to comment
Share on other sites

Does Note Range Min and Max not refer to which velocities get processed? (Just guessing as they have values of 0-127.)

 

Those are note numbers. C-2 to G8 (MIDI note 0 to MIDI note 127).

 

Just to clarify, I need this to kick in gradually from note D5, with the velocities getting more compressed as you go up to F6 and then levelling out. And ideally I'd like to be able to draw any shape across the keyboard to even out patches that have louder/quieter area

 

OK, I see that's clear in the picture you posted but not in your original description...

 

I think you'll have to get your hands dirty with transformer objects in the MIDI environment then.

 

Actually, maybe you could do it with a couple of Velocity Processor plug-ins, but you won't get the graphic you get in Mainstage.

 

J.

Link to comment
Share on other sites

Obviously it'd be nice to be able to do this from within the virtual instrument, but NI Scarbee is pretty basic control-wise.

 

There may be some Kontakt scripts for that. I don't see anything for what you want in the factory ones, but probably someone's done one. It would be a matter of searching.

 

Which Scarbee instrument are you referring to, BTW?

 

J.

Link to comment
Share on other sites

Thanks Jordi and sorry my original post wasn't clear!

 

I'm using the Scarbee Mark I rhodes. And unfortunately I don't have the full Kontakt, just Kontakt Player which seems to rule out Kontakt scripts.

 

I'll take a look at transformer objects. I'm new to the midi environment so all looks a bit frightening but will give it a go! Any pointers as to where to start? Or maybe it's complex enough that I just need to get my head down and learn the whole thing?

Link to comment
Share on other sites

Using a preset related to velocity could be an easier start point... Although, I am not sure these presets are available also in the Environment Transformer object, these could give you a good insight on how to configure one that would suit your needs anyway.

Transform is pretty straightforward. The top row of parameters defines what MIDI data you want to affect, the bottom row is the effect you want to apply to these specified MIDI data. For that to work, implies that you connect a cable from the main input object to the Transformer object and another cable from that Transformer object to the channelstrip onto which is intantiated your Kontakt player to be affected.

Link to comment
Share on other sites

Using a preset related to velocity could be an easier start point

 

Those presets are available in the Transform Window, which is only good for offline processing of events in regions.

The Transformer object processes data in real time, which is what fyankai is looking to do.

 

J.

 

...these could give you a good insight on how to configure one that would suit your needs anyway...
Link to comment
Share on other sites

I had a play with this but couldn't find a way to decrease the velocity smoothly across the top end of the keyboard. Seems like the filters are on/off, so notes get the processing or not. Maybe I'm missing something though...

 

In any case I've just discovered the Script Editor! I'm OK with Javascript so found that this does the trick:

 

function HandleMIDI(event)
{
event.trace();
if (event.pitch > 86) {
	var reduction_amount = (86 - event.pitch) * 2;
	event.velocity = Math.max((event.velocity + reduction_amount), 1);
}
event.trace();
event.send();
}

 

But still curious to know if there's a way to do this with a Transformer object. (Partly due to reading some things suggesting that processing MIDI data with the Script Editor can cause some timing issues.)

Link to comment
Share on other sites

In any case I've just discovered the Script Editor! I'm OK with Javascript so found that this does the trick

 

Cool! Way to go!

 

But still curious to know if there's a way to do this with a Transformer object. (Partly due to reading some things suggesting that processing MIDI data with the Script Editor can cause some timing issues.)

 

It will take more than a single transformer object to get a similar effect (see attached example), if you can't detect any timing issues you should probably continue using it.

 

J.

Gradual Velocity Reduction D5-F6.zip

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...