I need help implementing logic.

Let me explain :

I have a MIDI sampler and I would like to take control of the rate (speed/pitch) via MIDI CC messages.

The rate goes from -2x (reverse) to 2x (forward. It takes CC values from 0-127.

With a value of 64, the rate is at 0, so the sampler on pause, kind of

With a value of 127, the sampler plays forward 2x the original rate

With a value of 0, it plays reverse 2x the original rate

And with a value of 95, it plays forward at the original rate (1x)

Here’s what I’m trying to achieve :

I would like to be able to play with the rate and at some point, momentarily, thru a CC message, jump to the opposite side with the same rate ; for example, from 1x to -1x or from 0.5x to -0.5. I know that from 1x to -1x need the CC value 95 (1x) and 31 (-1x). I found that by subtracting 64 to the CC values received and I get the value that correspond to the reverse rate value of the sampler. But I get confused when I send values below 64, then I get negative values. It would be great if when I get under 64, then the logic would be reversed and I would get values over 64. I don’t know if my explanations are clear.

Thank a lot for you help.

Regards.

I need help implementing logic.

Let me explain :

I have a MIDI sampler and I would like to take control of the rate (speed/pitch) via MIDI CC messages.

The rate goes from -2x (reverse) to 2x (forward. It takes CC values from 0-127.

With a value of 64, the rate is at 0, so the sampler on pause, kind of

With a value of 127, the sampler plays forward 2x the original rate

With a value of 0, it plays reverse 2x the original rate

And with a value of 95, it plays forward at the original rate (1x)

Here’s what I’m trying to achieve :

I would like to be able to play with the rate and at some point, momentarily, thru a CC message, jump to the opposite side with the same rate ; for example, from 1x to -1x or from 0.5x to -0.5. I know that from 1x to -1x need the CC value 95 (1x) and 31 (-1x). I found that by subtracting 64 to the CC values received and I get the value that correspond to the reverse rate value of the sampler. But I get confused when I send values below 64, then I get negative values. It would be great if when I get under 64, then the logic would be reversed and I would get values over 64. I don’t know if my explanations are clear.

Thank a lot for you help.

Regards.

Thanks ingox!

It seems that what I need is that simple.

Works perfectly.

Cheers! ]]>