Guest User

Logic X black keys

a guest
Feb 15th, 2014
437
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // Logic X script to adjust the velocity sensitivity of black keys
  2. // while preserving pianissimo and fortissimo velocities.
  3.  
  4. // damping factor > 1: decrease black keys' sensitivity - softer black keys
  5. // damping factor = 1.5 : quite good setting to get equal dynamics of black and white keys on a doepfer lmk2+ keyboard
  6. // damping factor = 1: no change
  7. // damping factor < 1: increase black keys' sensitivity - brighter black keys
  8.  
  9.  
  10.  
  11. var PluginParameters = [{name:"Damping factor", type:"lin", minValue:0.1, maxValue:5, numberOfSteps:126, defaultValue:1.5}];
  12.  
  13. function curve(x)
  14. {
  15.     damp = GetParameter("Damping factor");  
  16.     // so whats a function that maps 0 to 0 and 127 to 127, but takes a dip in between?
  17.     // I know, x^d/(127^(d-1)) for d>0!
  18.     return Math.pow(x,damp)/Math.pow(127,damp-1);
  19. }
  20.  
  21. function HandleMIDI(event)
  22. {
  23.     if (event.toString().indexOf("#") != -1) {  // hack.
  24.         event.velocity = curve(event.velocity);
  25.     }
  26.     event.trace(); 
  27.     event.send();
  28. }
Advertisement
Add Comment
Please, Sign In to add comment