aksn Posted October 7, 2017 Share Posted October 7, 2017 Here's something I did today: Simple tool for Korg Volca Sample: - Splits notes from (C1-A1) to seperate channels (1-10) - Maps note velocity to sample level (CC7) - Adjustable sliders for maximum level of each sample Copy this to your MIDI FX Scripter: //Korg Volca Sample MidiMapper v1.0, by aksn function HandleMIDI(event) { if (event instanceof Note && event.pitch == 36) { event.channel = 1; } if (event instanceof Note && event.pitch == 37) { event.channel = 2; } if (event instanceof Note && event.pitch == 38) { event.channel = 3; } if (event instanceof Note && event.pitch == 39) { event.channel = 4; } if (event instanceof Note && event.pitch == 40) { event.channel = 5; } if (event instanceof Note && event.pitch == 41) { event.channel = 6; } if (event instanceof Note && event.pitch == 42) { event.channel = 7; } if (event instanceof Note && event.pitch == 43) { event.channel = 8; } if (event instanceof Note && event.pitch == 44) { event.channel = 9; } if (event instanceof Note && event.pitch == 45) { event.channel = 10; } if (event instanceof NoteOn && GetParameter(0) == 1) { var cc = new ControlChange(); cc.channel = event.channel; cc.number = 7; cc.value = event.velocity / 127 * GetParameter(event.channel); cc.value = Math.round(cc.value); cc.send(); // cc.trace(); } event.send(); // event.trace(); } var PluginParameters = [ { name:"Velocity",type:"checkbox", numberOfSteps:1, defaultValue:1}, { name:"Level (ch1)",type:"lin", minValue:0, maxValue:127, numberOfSteps:127, defaultValue:127}, { name:"Level (ch2)",type:"lin", minValue:0, maxValue:127, numberOfSteps:127, defaultValue:127}, { name:"Level (ch3)",type:"lin", minValue:0, maxValue:127, numberOfSteps:127, defaultValue:127}, { name:"Level (ch4)",type:"lin", minValue:0, maxValue:127, numberOfSteps:127, defaultValue:127}, { name:"Level (ch5)",type:"lin", minValue:0, maxValue:127, numberOfSteps:127, defaultValue:127}, { name:"Level (ch6)",type:"lin", minValue:0, maxValue:127, numberOfSteps:127, defaultValue:127}, { name:"Level (ch7)",type:"lin", minValue:0, maxValue:127, numberOfSteps:127, defaultValue:127}, { name:"Level (ch8)",type:"lin", minValue:0, maxValue:127, numberOfSteps:127, defaultValue:127}, { name:"Level (ch9)",type:"lin", minValue:0, maxValue:127, numberOfSteps:127, defaultValue:127}, { name:"Level (ch10)",type:"lin", minValue:0, maxValue:127, numberOfSteps:127, defaultValue:127} ]; ...and voila, now you have a Volca Sample which can be played from drumpads or keyboard with velocity response. It's my first script on javascript, so feel free to criticise if somethings not right Quote Link to comment Share on other sites More sharing options...
Eric Cardenas Posted October 7, 2017 Share Posted October 7, 2017 Thanks so much for sharing. This looks awesome. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.