I've been using LXConsole regularly since a few months now and so far i really enjoy working with it and have not ran into any problems.
We had some mailing-contact about integrating midi-functions to LXconsole about a year ago. The functions you added works fine (I'm very grateful for that) but I think it would be very useful to let different midi-commands trigger different scenes. If I run a show in another application like Qlab I would only have to program each scene once in LX, then I can jump between them whith the cues in qlab. It would also be useful if I want the lights to follow music or sounds in an application like Ableton Live, then I can improvise with different sounds there and send midi-commands to let the light follow the sound-actions. Another thing I want to do with this is using Pure Data and Arduino to send signals from sensors that trigger light-actions.
Two ways to do it (that I can think of now):
Either through letting the velocity of the midi note choose the scene (will only work with 127 scenes and not with scenes named ie 3.4 though). MiniStageConsole works like this.
Or through letting the user make a list of which note to trigger which scene. (a bit like ableton live works) This could be combined with letting midi-controll-values controll channels or groups of channels (also in a list where you combine Midi-information with LX-functions), making it possible to use a device with physical faders (or a setup with sensors) to run the light.
Most of all the second example would make LXConsole a very useful tool in a broad range of situations and not only for running theatre and similiar, and really take advantage of using your computer to control lights.
What do you think, is this very complicated stuff?
future midi functions suggestions
You can use MIDI Show Control to access cues in random order. LXConsole supports Go, Stop, and Pause.
QLab is one application that allows you to send MIDI Show Control (MSC) commands. Make sure that the MSC Command Format is "Lighting (General)" and that the Device ID matches the MSC Device ID in LXConsole's Preferences. The "Q number" is executed by LXConsole if it exists. (MIDI must be enabled and the Live Window must be open)
QLab is one application that allows you to send MIDI Show Control (MSC) commands. Make sure that the MSC Command Format is "Lighting (General)" and that the Device ID matches the MSC Device ID in LXConsole's Preferences. The "Q number" is executed by LXConsole if it exists. (MIDI must be enabled and the Live Window must be open)
LXConsole 1.2.8 is available and has extended MIDI functions.
The Setup window now contains a tab for MIDI triggered commands. Any Note On message can trigger a corresponding command.
The simplest command is "GO" which is the same as before: the note on causes the Live window to play the next cue as long as the velocity is not zero.
The "GO:nnn" command causes the Live window to play cue number 'nnn' as long as it exists (and the velocity is non-zero). With the GO: command, the velocity can be used to determine the cue number: "GO:%v" (where %v is replaced with the velocity when the command is executed).
Finally, any command line can be executed and %v can be used to incorporate the velocity of the note as a percentage (127 = 100%). So, the command could be something like "1&2&4>10@%v" allowing the note to set the levels of those channels by velocity. In this case, the velocity CAN be zero, turning off the channels. If you want a command to be triggered only by a non-zero velocity, it can be prefixed with "+" For example "+cue:1" would jump to cue 1 only on a positive velocity. This means the command would not be triggered twice if it was initiated by pressing and releasing a key on a MIDI keyboard.
Note: executing command strings does not automatically cause the change to get sent to the output (unlike playing cues via the Live window). For this to happen "Run Script on Cue Update" must be enabled.
The Setup window now contains a tab for MIDI triggered commands. Any Note On message can trigger a corresponding command.
The simplest command is "GO" which is the same as before: the note on causes the Live window to play the next cue as long as the velocity is not zero.
The "GO:nnn" command causes the Live window to play cue number 'nnn' as long as it exists (and the velocity is non-zero). With the GO: command, the velocity can be used to determine the cue number: "GO:%v" (where %v is replaced with the velocity when the command is executed).
Finally, any command line can be executed and %v can be used to incorporate the velocity of the note as a percentage (127 = 100%). So, the command could be something like "1&2&4>10@%v" allowing the note to set the levels of those channels by velocity. In this case, the velocity CAN be zero, turning off the channels. If you want a command to be triggered only by a non-zero velocity, it can be prefixed with "+" For example "+cue:1" would jump to cue 1 only on a positive velocity. This means the command would not be triggered twice if it was initiated by pressing and releasing a key on a MIDI keyboard.
Note: executing command strings does not automatically cause the change to get sent to the output (unlike playing cues via the Live window). For this to happen "Run Script on Cue Update" must be enabled.