Author |
Topic: Midi cc to velocity (Read 19408 times) |
|
nicoloverrini
New Member

 MIDI-OX Rules!
Posts: 2
|
 |
Midi cc to velocity
« on: Nov 28th, 2017, 5:16pm » |
Quote Modify
|
Hi all How can I get the value of the cc 18 incoming from port let's say X and use that value to overwrite the velocity of every note coming out from port Y . Thanks
|
|
IP Logged |
|
|
|
Breath
Administrator
    

Gender: 
Posts: 1029
|
 |
Re: Midi cc to velocity
« Reply #1 on: Nov 28th, 2017, 8:17pm » |
Quote Modify
|
Hi Firstly, if you are just trying to vary the volume with CC18 you can just use the DataMapping to swap CC18 to CC7 which is volume. OR, if velocity on the synth changes, say, the filter as well, it might be quicker to change the synth preset to allow CC18 to do that. OR Normally when using MidiOx Data Mapping to change the Velocity of a Note On event, you need to already know what the output velocity is to be. If you want to change that number on the fly, MidiOx needs to keep track of what the last CC18 value was and there are only two ways I can think of using MidiOx to do this. Write a script file (see MidiOx Help). The other way is to write a number of Data maps that changes the input Note to a fixed velocity and swap these DataMaps with a Patch map driven by the CC18. When MidiOx gets a CC18 message it outputs a PC message . Create a Options / Data Map - add a single line that changes the CC18 to Patch. the input Any Channel, CC, 18 18, -1 -1 the output Match Input, ProgChng, -1 -1, -1 -1 - don't forget to tick "Use Input Value 2". Save it as CCtoPC.oxm This PC message switches in a different DataMap with the Patch Map. Create a Options / Data Map and with the first line ... the input Any Channel, NoteOn, any Note, and Velocity 1 to 127 (vel = 0 means note OFF) the output Match Input, Match Input, -1 -1, 10 10 This will make any note you play have the velocity of 10. Save it as CCVel10.oxm In the Data Map, double click line one and change the output velocity to 20 20. Save it as CCVel20.oxm I would just create DataMaps with velocity = 10, 20 ,30 ... 100,110,120, 127 which is 13 DataMap files, but if you want finer resolution you can always add more. Make sure you have the DataMap On ticked - next to the OK button and click OK. Now you need to make a Patch Map that will load one of the above Data Maps depending on the Patch sent. Open Options / Patch Mapping. On each third line or so (Patch 0 3 6 ) Assign a DataMap CCVel10.oxm - Patch 10 13 16 has CCVel20.oxm - Patch 20 23 26 has CCVel30.oxm etc Save the map as ChangeVelCC.pmi, tick the box to turn on the map and press OK On the Midi Port Routing window connect your keyboard input (port Y in your question) to the synth. Playing the keyboard you should see the velocity is one value. Connect the CC18 controller (Port X) to any output you are not using - MidiYoke 1 for example. Click on the little box on the connection line from Port X and find the CCtoPC.oxm in the drop down box called 'Map File'. This datamap will only be applied to this connection and so the synth won't see any PC messages. Changing CC18 you should see the DataMaps being loaded in the Output Monitor and the keyboards velocity changing according to the map that is loaded. All the best Royce
|
« Last Edit: Nov 28th, 2017, 8:53pm by Breath » |
IP Logged |
|
|
|
nicoloverrini
New Member

 MIDI-OX Rules!
Posts: 2
|
 |
Re: Midi cc to velocity
« Reply #2 on: Nov 29th, 2017, 7:19am » |
Quote Modify
|
Thank you Royce !!! A lot of work here !! I'll let you know ! Thanks
|
|
IP Logged |
|
|
|
|