If anyone is feeling (slightly) adventurous: the latest version has a couple of neat features and it would be great to have some testers.
-
Clock mode: Shift + SMPTE/Beats replaces the song time/beats on the 7-segment Time Display with the current time.
-
Global solo: if you have one or more tracks soloed, the global SOLO button (next to CLICK) suspends/reactivates all solo states simultaneously. While suspended, blinking track SOLO buttons indicate which tracks will be re-soloed by the global SOLO button. Shift + SOLO resets.
- The SOLO button's previous function, swapping between clip and device view, has been moved to the AUX button (next to the AUDIO INST button, which shows/hides the bottom pane).
- I've fixed the GROUP button so its LED updates correctly.
I haven't been able to reproduce the issue
Kik07L reported above, so I'd love to get some more people messing around with the script to find out what could have gone wrong there (best not during a live performance, perhaps, although the script has been entirely bug-free on my end).
You can find the project
here. For the latest beta version (not the Release), go to Code > Download ZIP.
________________________
Some general project status thoughts: I'm a little frustrated by the number of
Live features not yet accessible through the Python API. I'd love to create dedicated buttons for showing/hiding automation, take lanes or the Info View, optimizing arrangement width/height, waveform vertical zoom, the "Enable only while recording" setting for the metronome, even saving the project...
Some of these features have a keyboard shortcut, but as far as I can tell, none are represented in the LOM/Python API. Some can be MIDI mapped manually, but that involves an extra step, and the X-Touch has a problem where its LED buttons don't reflect the on/off state of manually mapped parameters.
*
I've looked into simulating keypresses to leverage the existing keyboard shortcuts, but that seems impossible to do (especially cross-platform) without a full Python install or even additional modules.
That means the possibilities for adding button functions are somewhat limited: I can only work with what the API offers (although it's possible to get creative with that – the global solo function is entirely programmed within the script, since Live has no such a thing). So if anyone has any idea to circumvent those limitations, let me know!
________________________
* Manual MIDI mapping is entirely separate from the Remote Control script. The script constantly monitors Live and talks to the X-Touch hardware to update all button LEDs and faders, acting as a go-between, but for manually MIDI mapped parameters, Live tries to talk to the hardware directly. Unfortunately, they don't speak the same language when it comes to the button LEDs: Live sends a Note Off message to indicate that a mapped parameter has been turned off, whereas the X-Touch expects a Note On message with velocity=0 to turn off the corresponding button's LED. It is possible to get proper LED feedback for manually mapped parameters by inserting a virtual MIDI port between Ableton Live and the X-Touch, and using MIDI-OX to translate Note Off to Note On with velocity=0 on the fly, but there's no user-friendly way to fix it from the Remote Control script, as the MIDI mapping messages never pass through there.