adjusting midi output range

cosmic_artistry

2013-04-01 17:18:35

i am using an expression pedal to control sampled brass/wind dynamics. it is difficult to really nail my parts when the expression (CC11) controls the entire range of 0-127. For example I would like to currently adjust the full expression pedal range to output 18-65 using Bomes MT Pro. Here is an example formula but I can't get the syntax working inBomes MT Pro:

pp=xx+qq/127*(yy-xx)

where xx is the low limit for output CC11; yy is the top limit; qq is the input value of CC11; pp is the output for new limits defined by the user.

DvlsAdvct

2013-04-03 14:15:06

Hi cosmic_artistry

Unfortunately you can't do equations like that in MT. Each line of the rules has to be its own single formula. Instead of using a constant formula for yy-xx I'd set that to a static number (65-18, so 47).
So you would want to set these more like

xx=18
yy=47
oo=qq/127
rr==xx+rr
pp=rr*zz

That make sense? Not sure if you're math is going to work out, but test it and let me know if that works any better.

And we flag all posts by first time posters for approval to cut down on spam. I will delete your other post. :)

cosmic_artistry

2013-04-03 22:27:53

i'm confused:

oo is defined but not used in calculation?

zz is not defined but used in calculation?

what does the double equal sign do? how is it different than single equals sign and when would you want to use double equals?

cosmic_artistry

2013-04-03 22:31:59

also there is a calculation with rr and rr is not defined.

can you take a second look at this and re-write? i'll get the hang for future use if we can figure this out...thanks for your help!

DvlsAdvct

2013-04-03 22:33:36

Your confusion is completely understandable, as those were my stupid mistakes. I made changes mid-creation and forgot to backtrack. Let me change this in around an hour. :)

cosmic_artistry

2013-04-03 22:51:12

ok great! fyi here is my attempt but it is not working. the expression pedal only causes a jump between 18 and 41 once and not a continuous CC between 18 and 65:

xx=18
yy=47
oo=qq/127
rr=oo*yy
pp=xx+rr

metastatik

2013-04-03 23:33:00

Code: Select all

rr=qq*100
pp=rr/266
pp=pp+18
if pp==ga then exit rules, skip Outgoing Action
ga=pp
This is the Scaling Rule described here with the addition of an offset (pp=pp+18) as you want your scaled range to start at 18 instead of 0.

As mentioned in the linked thread, it’s always a good idea to try rules out on paper first to make sure they work. So let’s try the above rules with 3 different values for qq.

Code: Select all

qq=0

0=0*100
0=0/266
18=0+18

Code: Select all

qq=63

6300=63*100
23=6300/266
41=23+18

Code: Select all

qq=127

12700=127*100
47=12700/266
65=47+18

cosmic_artistry

2013-04-04 04:53:34

thanks! this works for me.

one more quesiton tho - what is 'ga'?

metastatik

2013-04-04 11:19:34

It's a global variable. The reason why it's used is discussed in the thread I linked you to.

cosmic_artistry

2013-04-04 18:39:09

Aha! I see the discussion know about 'ga' being the last stored value. Thanks again for all your help and quick response!