Midi Conversion 127 Range

Samelot's icon

Hello, I have been trying to figure out how to successfully map midi to some of the sliders/parameters in my Gladiator 2 VST. I use this VST in Ableton. In Gladiator VST, the Osc1 Wave slider goes up from 0 to 1000, however, there are only 163 waveforms. That means there are no waveforms past 163 all the way to 1000. So when I map a knob on my midi controller to Osc1 Wave in Gladiator, as I increment and decrement with my midi control, the intervals are by 7 or so, which sucks because I skip 6 waveforms with every increment/decrement. I have done some research in an effort to solve this problem which I believe has something to do with translating/scaling the standard 127 midi range to a different range.

Does anyone know any existing max for live patch that allows midi to flow smoothly?

Or even a patch that allows to always have a fixed output?
So however big the jump is in the input, the output will always be an increment by one?

Thanks

ctrlzjones's icon
Max Patch
Copy patch and select New From Clipboard in Max.

not sure if this is what your heading for ...

Roman Thilenius's icon

you an never "map" a midi controller to 1-1000, because its resolution will always stay the same, like you already found out.

what you could do is using a pad controller to control something which has an n amount of steps but with a dial this is impossible.

-110

Samelot's icon

ctrlzjones, I took a look at that patch, and that is exactly the kind of thing I'm looking for. However, I'm not sure if it's possible to implement that slider to affect the vst slider 0-1000. If it is I'm not sure how it's done as I am just getting into max.

Roman Thilenius, what I would like to do with this patch is actually not with a slider or dial. I'd like to have 2 buttons (on my uc33e), an increment and decrement, to go up and down through the waveforms.

I outputted the vst slider for the waveform selector (0-1000) to osculator and took note of the increments that were made if the parameter was outputted to a midi cc and if the parameter was outputted to pitch bend.

127:
0.13 [waveform 1]
0.25 [waveform 2]
0.38 [waveform 3]
0.51 [waveform 4]
0.64 [waveform 5]

PB:
16.38 [waveform 1]
32.77 [waveform 2]
49.15 [waveform 3]
65.53 [waveform 4]
81.92 [waveform 5]

I'll post a nice little pic to show this

If I was to work out some math to calculate how to jump successively to these numbers, would this allow me to accurately go up in waveforms on my vst parameter? If so, could someone point me to the right direction to make this happen.

Thanks

4657.Screenshot20121118at9.05.10AM.jpg
jpg
Roman Thilenius's icon

ok if you use buttons, that will work. but not by scaling 0-127 to 0-1000. the range of 0-127 has 128 possible states and no more :)

to use 2 buttons to step to 0-1000 can by done by using the [accum] object.

— convert _any input_ from button 1 to a [t b 1] and any input from button 2 to a [t b -1]
— onnect both numbers (1 and -1) to the middle inlet of [accum]
— connect both b´s to the first inlet of accum.

button 1 now adds 1 to n and button 2 substracts 1 from n.

-110

Samelot's icon

Awesome thanks. For the most part I think the patch is correct.

I just tried to get the first interval correct (0 to 0.13). I will worry about the next ones later (0 to 0.25). The increments seen in Max appear correct, but when I look at how the increments are translated to Osculator, I see that the intervals by integers (0 to 1, 2 to 3, etc). It takes about 4 or 5 increments or decrements to jump, and this jump is always by 1.0.

Max Patch
Copy patch and select New From Clipboard in Max.

How do I get the float increments and decrements to translate correctly in Osculator?

Samelot's icon

anyone?

Roman Thilenius's icon

your patch look right. but i dont get the osculator question. your original issue was to target a VST parameter.

Samelot's icon

I was just using Osculator to monitor the values. When sending midi to Live, I can't get the increments I'd like to. I believe that this is because of the 128 limit, but why then can I monitor a vst parameter from Live, and see that there are increments used between 0 and 1?

0.13 [waveform 1]
0.25 [waveform 2]
0.38 [waveform 3]
0.51 [waveform 4]
0.64 [waveform 5]

Is there a way to use a pitchbend scale to affect a Live parameter?

Samelot's icon

This might explain a little bit more about what I am trying to do, it was a post I made when I was working with PD.