• SONAR
  • How To Program Changing Velocities Per Note?
2013/11/12 11:33:56
aglewis723
Hello Everyone,
 
This might be simple or it might not even be possible, not sure lol. 
 
Basically right now I have a synth bass line, where the patch sound changes with different velocity hits.   I want an entire piece to have the same 5 notes with the following velocities:   70, 90, 70, 90, 80.   It gives the baseline some "bounce" if you will.
 
Problem is, it would be a pain in the ass to have to go into Piano Roll and double click EACH and EVERY note to plug in it's velocity number. 
 
I was thinking of a groove-clip and stretching it across the track, but then the problem is the chord changes.  I usually don't use Groove-clip looping because setting up the markers is a pain.
 
I was wondering if there is a way to program in Sonar to automatically adjust all my velocities on my baseline so that the velocities of 70, 90, 70, 90, 80 just repeat as each note is played.   It would have to be "by-note", not by beat, because some beats don't have a bass note.
 
I hope I made myself clear.
 
Any help would be greatly appreciated!
 
Thank You,
Adam
2013/11/12 11:38:44
mettelus
Is the pattern consistent enough that you can use the PRV, and simply copy/paste? Then lasso and drag the notes up/down for the chord changes?
 
Charlie Roy has a nice PRV video for drums that shows what I mean..
http://www.youtube.com/watch?v=ruAnAPR6-hQ
2013/11/12 11:45:29
Beepster
I'm not sure but isn't this the kind of thing Calscripts do? Probably a complex thing to learn just for one song but then you know how to do it for the future.
 
Personally, as someone who yet to learn how to do such fanciness I would probably just copy/paste my way through.
 
hmm... again I'm not sure if this is possible but perhaps there is a way to copy just the velocities in the Controller Pane then apply it as needed through out the track. That way you can just paste the velocity on all the parts instead of fiddling with it one section at a time.
2013/11/12 11:46:50
aglewis723
mettelus
Is the pattern consistent enough that you can use the PRV, and simply copy/paste? Then lasso and drag the notes up/down for the chord changes?
 
Charlie Roy has a nice PRV video for drums that shows what I mean..
http://www.youtube.com/watch?v=ruAnAPR6-hQ


Hello,
 
Thanks for the reply.  It is very consistent, I guess i can do that (seems like a pain), but I guess midi-programming is, isn't it?  LOL.
 
What happens if it wasn't a pattern that repeats though?   Any other options?
 
Thanks,
Adam
2013/11/12 11:49:40
Beepster
I think you can draw velocity in in the Controller Pane too so if you don't need exact accuracy maybe you could just go through with the draw tool and draw in the rises for each section of notes. Would take a lot less time than screwing around with the notes themselves.
 
Edit: I'd try all this out for you (except the Cal stuff) but I have all the MIDI tracks in my current project archived and hidden.
2013/11/12 12:22:27
aglewis723
The numbers need to be precise and these synth's are very precise and I am a total perfectionist LOL.
I wish there was a way to just program it.  Just to say, here is the velocity pattern I wan 70, 90, 70, 90, 80... please repeat through all notes.  
 
:(
2013/11/12 12:36:06
brundlefly
You can use Select By Filter to select notes that fall on particular beats or tick values/ranges and then drag their velocities in the PRV. Or use Find/Replace to change them as well as select them. Depending on the rhythm, you may need to do it once for each step in the pattern.
 
That said, I highly recommend you get a keyboard controller and learn to play in basic stuff like this in real time. It makes getting natural dynamic feel and timing so much easier. Frankly I don't understand how people can devote so much time to this level of fiddling in the PRV. In the long run, that time would be better devoted to learning to play keyboards and/or other controllers.
 
 
2013/11/12 12:40:39
scook
CAL example:
 
(do
    (int counter 0)   
)
(do
    (if (== Event.Kind NOTE)
        (do
            (switch (% counter 5)
                0 (= Note.Vel 70)
                1 (= Note.Vel 90)
                2 (= Note.Vel 70)
                3 (= Note.Vel 90)
                4 (= Note.Vel 80)
            )
            (++ counter)
        )
    )
)
2013/11/12 12:42:06
aglewis723
brundlefly
You can use Select By Filter to select notes that fall on particular beats or tick values/ranges and then drag their velocities in the PRV. Or use Find/Replace to change them as well as select them. Depending on the rhythm, you may need to do it once for each step in the pattern.
 
That said, I highly recommend you get a keyboard controller and learn to play in basic stuff like this in real time. It makes getting natural dynamic feel and timing so much easier. Frankly I don't understand how people can devote so much time to this level of fiddling in the PRV. In the long run, that time would be better devoted to learning to play keyboards and/or other controllers.
 
 


Hello, I DO have a keyboard controller, I played all this stuff by hand.   Just this is a very sensitive patch and the velocities need to be perfect.   It's impossible to play the same velocities over and over.  
 
I will play around with the Select By Filter and Find/Replace.
 
Thank You,
Adam
2013/11/12 12:50:19
Beepster
scook
CAL example:
 
(do
    (int counter 0)   
)
(do
    (if (== Event.Kind NOTE)
        (do
            (switch (% counter 5)
                0 (= Note.Vel 70)
                1 (= Note.Vel 90)
                2 (= Note.Vel 70)
                3 (= Note.Vel 90)
                4 (= Note.Vel 80)
            )
            (++ counter)
        )
    )
)




There you go. Scook, the clever fellow he is, has written a calscript for you. All you gotta do is figure out how to run it which is in the manual and the Power books as well IIRC.
© 2026 APG vNext Commercial Version 5.1

Use My Existing Forum Account

Use My Social Media Account