Page 1 of 1

Midi Triggers and Other Questions

Posted: Sat Nov 09, 2013 2:19 pm
by zebetz
Hello all! New to the forum and to LXConsole - Apologies up front if there is a resource I'm unaware of with answers to these newb questions but here goes...

I'm running with:
o OSX 10.8.4
o LXConsole 3.2.0
o QLab 3.0.9 (b4)

Outputting to an Enttec DMX USB Pro

Is there a way to map certain midi messages to certain functions (besides GO)?

eg Let's say I want to execute a certain effect when LXConsole receives midi NOTE ON for NOTE 31 (let's say 127 velocity) and I want to stop that effect on receipt of a NOTE ON for some other note.

Now, I know I can use the advanced feature in the cue drawer to trigger effects, but this still means that I must execute cues in order (ie GO q1 - which contains the start trigger, GO q2 which contains some other lighting state, GO q3 which contains the stop trigger, etc...) but what I'm really trying to do is get away from using a linear cue list. Ideally, I have a short cue list (with, say, four basic states - lights up, lights down, red state, yellow state - and a couple of effects - a flashing 'siren' light, a global flicker) which I can navigate as needed.

The show is largely improvised, which renders a linear cue list less useful than one wherein I can GOTO and execute (with crossfades) these various states at will (eg GOTO and execute q1, then q4, then back to q1, and so on...).

I also know I can use the command line to GOTO various cues, but the show must be run by the performers - we use wiimotes while onstage (via ControllerMate IV) to send various midi notes that trigger changes in the lighting control software - so using the command line or the [next] field in the show live window to manually input the next 'on deck' cues won't work for us in most cases. Ideally MIDI NOTE X sends a GO (with crossfades) for cue X, MIDI NOTE Y sends a GO for cue Y, and so on, so that we can 'jump around' within the cuelist as the show progresses, 'hands-free'.

In the past all of this was accomplished using my mac to run sound and video (we use QLab), and another (Windows) machine to run lights. But we are very keen to migrate away from the need for a second laptop, and so I've been looking into mac LX control software to enable everything to run on one machine.

On another (possibly related) note, it had occurred to me that the answer to some (maybe all) of these questions might lie within AppleScript, but I have never dabbled with it before. I'm no beginner at coding (I'm strong in Javascript, PHP, ActionScript, and okay with C++ and PASCAL, for example) but a new language is a new language, and while there are countless AppleScript resources on the net, I can find no LXConsole specific reference materials. So while I might dive in and teach myself AppleScript generically, I won't know what specific language LXConsole wants. Is there a library or a forum devoted to this topic? Maybe a list of basic LXConsole commands and any arguments? Any help with this is appreciated.

Kind regards...

Posted: Sat Nov 09, 2013 5:12 pm
by admin
Applescript may not be the best idea for live applications. The speed with which it executes is questionable. And, communication between applications may be severely curtailed by the operating system in the future due to security concerns.

There are multiple ways to control LXConsole with MIDI or OSC. QLab can trigger cues using MIDI show control. Or, a note on or change can be mapped to a set of actions. This is done in the setup window MIDI tab. If you look at the help for the setup window, there are a number of details there. And, there are several threads here on the forum about the subject.

Perfect!

Posted: Sat Nov 09, 2013 10:32 pm
by zebetz
Thanks very much! OSC is the solution. I have been accustomed to using MIDI to handle functions like this because one of my early pc lighting programs had only limited OSC support. Later suites offered support for both MIDI and OSC, but with the MIDI controls being just as flexible and robust as the OSC features, I had no reason to change. But you're right, of course. Inside LXConsole, OSC is the best way to accomplish these functions. As for AppleScript, maybe another day...