User Forum    :: Powered by YaBB
  « MIDI-OX User Forum - datmapping »
Welcome, Guest. Please Login or Register.
May 3rd, 2025, 4:35am


Home Home Help Help Search Search Members Members Login Login Register Register


   MIDI-OX User Forum
   MIDI-OX
   Mapping Questions
(Moderator: Jamie OConnell)
   datmapping
« Previous topic | Next topic »
Pages: 1  Reply Reply Notify of replies Notify of replies Send Topic Send Topic Print Print
   Author  Topic: datmapping  (Read 1993 times)
Menno
New Member
*





   


Posts: 5
datmapping
« on: Aug 30th, 2001, 8:34am »
Quote Quote Modify Modify

Hello list,
 
great program, but  the datamapping is not that clear to me, so I need some help!
I've build a midicontroller (Midibox plus from Thorsten Klose). This box depends on some datamapping from Midiox. Still I am not able to get the desired output from Midiox. I have a soundcard (terratec EWS64XL) which has some NRPN's I would like to tweak, using this box and the datamapping from Midiox.
For instance: to modify the attack of a midi-sound, the NRPN's = MSB,1 + LSB,99 + DataEntry6,var.
So  
Input is for instance CTRL 20,xx
Output needs to be CTRL 99,1 + CTRL 98,99 then CTRL 6,xx.
Is there someone who had the same problem but has been succesful in this kind of datamapping?
 
Bye
IP Logged

homepage www.move.to/nabob
Jamie OConnell
Administrator
*****






   
WWW Email

Gender: male
Posts: 2027
Re: data mapping
« Reply #1 on: Aug 31st, 2001, 8:05am »
Quote Quote Modify Modify

Welcome to the Forum  Grin
 
Your best bet is to use the NRPN type as the target in a mapping.  The NRPN type uses the entire 14 bit value (combined MSB, LSB) to represent the NRPN number and Data Entry Value (even when only using the Data Entry MSB).  You can use the MIDI-OX built-in NRPN calculator to combine or separate 14 bit values (the formula is: value = MSB * 128 + LSB).  
 
In your case, the NRPN number is:
 
     MSB: 1, LSB: 99 = 227 (NRPN number)
 
You set up a mapping from CC 20 to NRPN 227.  For the range you could map the CC default (0 - 127) into the full NRPN range (0 - 16383).  Your Map would look like:
 
     * Ctrl 20 20 * * | * NRPN 227 227  0 16383
 
 
Now, if you don't check "[ ] Send Full NRPN", then the Data Entry will send only an MSB of 0 -127.  If you do check it, both MSB and LSB Data Entry will be sent yielding a value of 0 -16383.  I hope this makes sense -- there's also some additional info about NRPN's available from the FAQ on the website.
 
« Last Edit: Aug 31st, 2001, 8:36am by Jamie OConnell » IP Logged

--Jamie
Music is its own reward.

Menno
New Member
*





   


Posts: 5
Re: data mapping
« Reply #2 on: Sep 3rd, 2001, 1:12pm »
Quote Quote Modify Modify

Great, it worked right away...it's pretty complicated stuff though. But the FAQ-explaination about the NRPN's is very clear.
I am afraid to ask you another thing in the same genre, but here I go: I also want to change two RPN's of my soundcard. They have the same structure as the NRPN's, but they are CTRL 101 + 100 + DataEntry 6. (101,0 + 100,1 + 6,xx)
I do not find the possibility to map to this parameters. Isn't it implemented (yet) ?
But thank you very much so far...
 
IP Logged

homepage www.move.to/nabob
Jamie OConnell
Administrator
*****






   
WWW Email

Gender: male
Posts: 2027
Re: datmapping
« Reply #3 on: Sep 4th, 2001, 8:22am »
Quote Quote Modify Modify

There are only 2 defined RPNs in MIDI (so far): Pitch Bend Range and Master Tuning.  It wasn't felt that a whole special type needed to be developed to handle these.
 
You can map RPNs but you'll need to use an older, more convoluted method.  This used to be the only way to map NRPN's as well. Tongue
 
To map an RPN you'll need to use the clone mapping feature so that the incoming event is serially supplied to each mapping step.  The mapping is performed in order of the dialog box list from top to bottom.  
 
For example, say that you want to map CC 20 into a RPN Pitch Bend Range of 2 semitones to 2 octaves (24 semitones).  Bend Range has an RPN value of MSB: 0, LSB: 0.
 
The first step is to map CC 20 into CC 101 and then clone CC 20 for another step:
 
   * Ctrl 20 20 * * x | * * 101 101  0  0
 
As you can see, we're not using the actual value of CC 20 (yet), but hardcoding the value 0.  
Now do a similar mapping for CC 100 and clone it:
 
   * Ctrl 20 20 * * x | * * 100 100  0  0
 
Finally we map the Data Entry MSB and use the CC 20 value in the mapping.  We map the CC 20 values 0 - 127 into Data Entry 2 - 24.  There's no need to clone this step, as we're done:
 
   * Ctrl 20 20 * *   | * * 6 6  2  24
 
Give it a try...  Grin
 
 
 
« Last Edit: Sep 4th, 2001, 8:34am by Jamie OConnell » IP Logged

--Jamie
Music is its own reward.

Pages: 1  Reply Reply Notify of replies Notify of replies Send Topic Send Topic Print Print

« Previous topic | Next topic »


MIDI-OX User Forum » Powered by YaBB 1 Gold - SP 1.3.1!
YaBB © 2000-2003. All Rights Reserved.