I've actually thought of adding in a new command for MIDI Script to allow
on the fly rebinding. This way the latency penalty for using MIDIScript
when using mode switches would only affect the mode switch itself, not the
actual commands that are switched.

In case that is not clear at all an example (for M-Audio X-session PRO's
mode switch for backwards/forwards when paused and pseudocode):

    MAudioXSessionPRO.play = function(....) {
        if (paused) {
            engine.resetbinding(MIDI_CTRL_BACKWARD_1, '[Channel1]' ,'back');
            engine.resetbinding(MIDI_CTRL_FORWARD_1, '[Channel1]',
,'forward');
        }
        else {
            engine.resetbinding(MIDI_CTRL_BACKWARD_1,
'[Channel1],'rate_down');
            engine.resetbinding(MIDI_CTRL_FORWARD_1, '[Channel1],
'rate_up');
       }
    }

Now when you press backwards or forwards the engine will execute the
command directly instead of passing through the MIDIScript engine. Getting
this to work for more complex cases might take a bit of work.
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
Get Mixxx, the #1 Free MP3 DJ Mixing software Today
http://mixxx.org


Mixxx-devel mailing list
Mixxx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mixxx-devel

Reply via email to