Hi -- I have come up with my ideal mapping for Base to use in conjunction with Push for performance, hoping for any suggestions on how to make it happen (or why it is not possible)...
This is my scheme:
Base turned sideways;
Instead of the remote script, using Livid editor to assign the different midi values & LED behavior, then mapping them in Ableton;
Pads in a standard drum pad layout, so they would only be useful for drum racks. (use Push to play non-drum rack tracks);
Touch faders 1-8 (in reverse order) assigned to macros, fader 9 assigned to crossfader;
Track select buttons doing the same, but in reverse order;
Side buttons (now on top) assigned to reserved midi messages that tell a Max for Live device which track to focus for Base.
To make it work I have to figure out:
If Live track focus changes can be assigned to midi messages, for the global track focus buttons.
If I can cook up a Max for Live device to do the Base-only track focus:
Base is set to a channel that is only routed to the track with the Max device.
Max echoes all Base pad & macro data to a specified midi channel. That specified midi channel is set by one of the "Base-only" focus buttons.
Midi input on each of the other tracks is assigned to a different channel, so only the selected track gets the echoed Base data.
The icing on the cake would be midi sent back to Base for LED feedback.
If I can make all that work then I can control Base's track focus independently of Push/Live focus.
I have programming experience but none in Max, so any ideas or suggestions are much appreciated!
Comments
You can use midi learn to latch a midi note to a track, fi that is what you are asking.
I understand what you're getting at with "global" vs. "Base only" track focus....unfortunately, there's not a straightforward way to achieve this since most of this sort of thing is keyed to the selected device/track in Live and "there can be only one!" (sorry hehe)
Regarding the remap on device vs. remap in script: true, it's nice to rely on the default settings of the Base, however, it's not unprecedented that a new version of Live will require a new script, which means that you'd have to edit the script again. So, if you edit the script, you don't have to worry about your Base's settings changing, if you edit the Base, you don't have to worry about the script changing.
Thanks for the ideas. I definitely have to read up more on your current remote script, I've been updating it but not paying attention to new functions, the lock and device selector functions sound great.
Mac or PC?
PC
Live doesn't support channelized MIDI internally, which makes it difficult to do this sort of thing. There are some workarounds, though. For instance, you can use MIDIYoke or something similar to create a loopback and then use the ExternalInstrument device to channelize the MIDI on its way out. When its received back into Live's input it will be routed to the tracks with the corresponding input channel. You can put several of these ExternalInstruments into an InstrumentRack, and control the active chain in numerous ways (a learned CC or an m4l API object), thus changing the channel the MIDI is being sent out of Live on.
Amounra thanks so much for the help. I am going to see what I can do with your idea this weekend.
I wound up finding my solution using ClyphX…
— Added lines to its usersettings file under [user controls] to dedicate 8 pads to toggle midi inputs on 8 channels:
Bfoc1 = NOTE, 2, 40, 1/in Base , 1/IN Push Input (Ableton Push)
Bfoc2 = NOTE, 2, 41, 2/in Base , 2/IN Push Input (Ableton Push)
Bfoc3 = NOTE, 2, 42, 3/in Base , 3/IN Push Input (Ableton Push)
Bfoc4 = NOTE, 2, 43, 4/in Base , 4/IN Push Input (Ableton Push)
Bfoc5 = NOTE, 2, 36, 5/in Base , 5/IN Push Input (Ableton Push)
Bfoc6 = NOTE, 2, 37, 6/in Base , 6/IN Push Input (Ableton Push)
Bfoc7 = NOTE, 2, 38, 7/in Base , 7/IN Push Input (Ableton Push)
Bfoc8 = NOTE, 2, 39, 8/in Base , 8/IN Push Input (Ableton Push)
— Set the controller with those pads as the ClyphX input/output in Live preferences
So, now I have a Push which sets its own track focus; a Livid Base (not using its midi remote script) as the second controller to be focused; and an Akai LPD8 (again w/o midi remote script) as the dedicated ClyphX controller. Used the LPD8 Editor app to make the pads toggle instead of momentary.
Just one small hitch: if I want to switch the track focus on the Push, I also have to have the track set to Push input on the LPD8.
The knobs on the LPD8 aren’t functional unless I want to assign them to something in ClyphX, no big whoop. The Base is mapped so its touch faders control track volumes 1-8 and crossfader.