Support |
> Now Jeff (and this is why you're mentioned above): would it be possible to > control a loop in Mobius with one of these controllers like a Kaoss pad, to > "sratch" the loop? I think so but it would be a complicated script. I don't pay much attention to the DJ world, but if I understand correctly scratching is a combination of playback direction changes with continuously variable rate shift. When the turntable is at rest, you are at rate 0.0 which is effectively a pause. As you push the left side of the turntable away from you the record moves under the stylus in the normal direction. The playback rate rises from 0.0 rapidly, levels off depending on the speed of the hand motion, then drops rapidly back to 0.0 if the hand motion stops. If the turntable is powered and the hand is removed it rises or falls gradually to rate 1.0. Pulling the left side of the turntable toward you does the same in reverse. The challenge for the control script is converting a MIDI continuous controller value that bounces between 0 and 127 into a set of rate and direction changes that sound like scratching. One possibly would be consider the center of the range, 64, to be the "resting" state where the playback rate is 0.0 and direction is meaningless. A control value of 127 would be a rate of 1.0 playing forward and a control value of 0 would be a rate of 1.0 playing in reverse. As you move the controller up and down we set the corresponding playback rate and direction. This might sound similar to turntable scratching but I doubt it would feel the same. We would probably need to experiment with smoothing algorithms to make the rate changes happen more gradually rather than just jumping to the current controller value. Crossfade that you mentioned would be much simpler, just make a control script that sets the output levels of two tracks or two groups of tracks. Controlling the "curve" of the fade would be the tricky part. Since you can't do trig, exponents, or other complex math in scripts you would have to pre-calculate a mapping array of 127 values that contained the output levels to apply to the tracks. Jeff