Intelligent velocity

Often when I am reducing velocity on multiple notes, the notes which are already low go down to zero. Obviously I don’t want that or I would just delete those notes. I know there is a compressor but that isn’t exactly what I want. Probably the Logical Editor can do this but I (and many others) don’t understand the Logical Editor. It’s too difficult. Would rather the normal velocity window do it and be a little more intelligent than it is. This post is lengthy because other people always feel the need to step in with suggestions rather than just accept my requests so I have to qualify it like this. I just want to make a request here without suggestion that I do it another way.

I have Compress/Expand in my Velocity window, but actually it doesn’t seem to make any difference what Ratio I put in, the same things happens each time! Theoretically though, that’s what you’re after isn’t it, if it worked??

But, in any case I don’t actually use this window, I adjust velocity in the info line, key editor, or I use the controller lane… The controller lane adjusts it by scaling which is what you’re suggesting I think, while the info line (or the list editor as well) adjusts it absolutely and relative.

[I reckon its very useful to make alternative suggestions because many users search the forums and those suggestions which may not be useful to the OP may be of great benefit to others. In the past I have gleaned much info from discussions around topics and OT suggestions made by contributors!]


It’s more work in the key editor or the command line. You are doing it manually is what you are saying. Of course and that takes more work. My request is for an option that makes life easier. Yes I know how to adjust it manually. Anyone knows that. You are not helping anyone.

Well, I don’t really understand what you’re asking, perhaps you could elaborate with an example or two?

And, note that a midi velocity value of zero doesn’t mean the note does not sound in all cases because the velocity might be controlling say the filter or attack rather than the loudness. I.e. it depends on the synth settings.


It sounds like you want a limit field.

So you would type in limit:10

so no matter what, you can attenuate say 45 levels on each note, but nothing will go below value of 10. it’s like a gain reduction limiter on a compressor (DC8C for ex,)

I think it is useful, sometimes, I wish to leave a limit of 1, when I have very dynamic midi parts and want to work fast.
Sometimes you have to babysit the stuff that disappears at 0.

I’m sure there is a logical edit for it (or a workaround as Cubasers love so much) , but I also would prefer a non geeky solution, like just a field that says ‘low limit’ and ‘high limit’.

Press “Alt” key when reducing… :bulb:

… and what does this do?

Might as well spend your time offering the information if you’re already here :exclamation:

It does what he want to achieve, as in the quotes:
reducing without lower values goes to zero, a more intelligent way:
lower values are reduced less, higher values are reduced more. So the values will get more compressed in relation to each other.

I don’t get that Alt key operation, where does this work? For me Alt gives me a slider which still moves velocity by absolute values not scaling… Can you elaborate please?


  1. Select a bunch of Midi notes in Key editor.
  2. Place mouse cursor at top of Velocity field.
  3. You should now see the mouse cursor change to a double pointed arrow = normal group editing
    4 a) Press Alt key. The mouse cursor should now change again, to a down pointing arrow with a line.
    4 b) You could also place the mouse cursor over the middle top point. You’ll then also notice that the tooltip changes from “Move Vertically” to “Scale Vertically” (just found this option).
  4. Now you can Scale the velocity values.

Note: I’m still on 7.5.30 version, but I don’t think this is a changed area.

I’ll use that Starprinkler but what I really want to do is using the keyboard only, reduce velocity on selected notes but never go down to zero. I realize this is probably possible with the Logical Editor. If they could make that preset for me that would be good.

BTW, if you hover over the top/central drag handle/dot then it does scaling without needing to press the Alt key. Really useful Tooltips appear to tell you what each drag handle does!

Anyway, yep that’s the scaling I referred to in the first post, but not many people know about it because its only recently introduced. Starsprinkler, you should call it the Controller Lane with Velocity showing or something like that because I was adjusting velocity in the Velocity Field in the info line!! Trouble is there’s so many places that values can be changed in Cubase :slight_smile: It would be most handy if that had the same scaling operation with Alt.


Thanks. I’ve use that in the past in some situations. The new midi velocity scaling functions are actually very elegant and useful for lots of things.

And maybe I am on a tangent away from the OPs request, but it would be nice to specify a low or high limit, lets say I want to lower every thing equally but the lowest velocity should be capped at 10. So 10 is the newly designated 0.

A simple text field in the Velocity dialogue seems a simple feature request. I don’t know however, how many folks actually need it.

A lot of folks will use things they do not currently know they need. I realize there is a need for zero but my request is for an option, not to eliminate zero. My suggestion is simply this, in the velocity window, make an option (AN OPTION) to set the minimum and maximum value that the notes will go to. Once they reach that ceiling or floor, they will not go any further.

I think I have now finally phrased it in a way anyone can understand and I do not think this would be complex to program. I am getting away from using the mouse. The mouse slows me down. Thanks everyone for your contributions to my thread.

Crossed post! Deleted…


Velocity Window with check boxes and user set values for maximum and minimum velocity. It will not go beyond those values. When it reaches the user defined maximum and minimum values, it simply stops.