|
Post by kellem on Feb 5, 2022 19:58:58 GMT
Hi everyone ! I’m desperately trying to understand how to control the notes velocity with my expression pedal (midi CC11) with Stream Byter.(in addition of AUM) In fact my little keyboard don’t have the velocity control and I want to control it with the pedal when I’m playing. I’ve found on the forum some topics about that but nothing worked for me. I assuming it’s not very difficult but I’m a beginner. I hope someone can help me. Thanks ! Erwan
|
|
|
Post by uncledave on Feb 6, 2022 12:39:43 GMT
Do you want to replace the velocity input from the keyboard, or just modify it in some way?
It would be more conventional to map an expression pedal to instrument volume, CC7, which would be simple BX 0B XX = XX 07 XX (0B is eleven in hex).
|
|
abadam
Developer 
Rotten Apple
Posts: 50
|
Post by abadam on Feb 6, 2022 12:49:06 GMT
uncledave has a good point but this will let you use your pedal to set note velocity
if M0 == B0 0B assign L0 = M2 end if MT == 90 if M2 > 0 assign M2 = L0 end end
|
|
|
Post by uncledave on Feb 6, 2022 13:01:22 GMT
Ha! You beat me. Good catch on avoiding Note On velocity zero, which I overlooked. But yours implies the CC is on MIDI Channel 1. Here's my slightly enhanced version: #VelocitySet If load Ass J0 = 64 # initialize memory to 50% End
If MT == B0 # detect CC If M1 == 0B # CC 11 Assign J0 = M2 # remember pedal value Block # this CC stops here End End
If MT == 90 # detect Note On If M2 > 0 Assign M2 = J0 # use saved value for velocity End End
One little problem we both have is that, when the pedal is returned to zero, the velocity will be zero for all notes. So the pedal is required to produce any sound. Should velocity be returned to a default value, maybe after a delay? Or should adjustment be disabled, so normal velocity from the KB is transmitted? Maybe a zero value in memory is ignored?
|
|
abadam
Developer 
Rotten Apple
Posts: 50
|
Post by abadam on Feb 6, 2022 14:15:22 GMT
nobodys perfect it seems thing should probably default to 64/not effect until CC seen, ignore 0s, preserve value, not be channel aware just for starters - OP will discover the quirks soon enough and either figure out how to fix to their liking or request further complimentary consultation! More a starting point then end result.
|
|