Midi Conversion 127 Range

    Nov 17 2012 | 10:22 pm
    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?

    • Nov 18 2012 | 11:20 am
      not sure if this is what your heading for ...
    • Nov 18 2012 | 2:19 pm
      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.
    • Nov 18 2012 | 4:31 pm
      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.
      0.13 [waveform 1]
      0.25 [waveform 2]
      0.38 [waveform 3]
      0.51 [waveform 4]
      0.64 [waveform 5]
      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.
    • Nov 18 2012 | 7:12 pm
      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.
    • Nov 19 2012 | 4:31 am
      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.
      How do I get the float increments and decrements to translate correctly in Osculator?
    • Nov 23 2012 | 7:49 pm
    • Nov 23 2012 | 9:10 pm
      your patch look right. but i dont get the osculator question. your original issue was to target a VST parameter.
    • Nov 24 2012 | 12:39 am
      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?
    • Nov 24 2012 | 12:43 am
      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.