m4L : How to receive two midi sources in one track?
Hello and happy new year !
I have a question regarding my ableton midi configuration for using properly Push 2.
My current setup consists of 5 hardware synths and 2 drum machines which are connected to my computer through a USB midi interface that has 8 midi ports (ESI M8U XL). Here's how my setup looks like :
USB Midi interface (ESI M8U XL) :
- Port 1 : Roland JX 3P synth
- Port 2 : DSI Mopho synth
- Port 3 : Elektron MD SPS drum machine
- Port 4 : Roland TR-8 drum machine
...
- Port 7 : Waldorf Blofeld synth
Now, let's say that I would like to use Push as my main midi controller for recording midi clips. However I would also like to be able to record midi notes from my analog synths too (ie : playing their integrated keyboards while recording a clip).
The only ways I found to achieve that in Live is to set up each midi track "midi from" setting to "all ins". That ways each midi track can receives midi data either from push or from the dedicated synths/drum machines
Now, let's say that I want to record a bunch of midi notes with my JX3P synth (midi port 1, track 1 : midi from is set to "all ins", midi to is set to "port 1"). All I need to do is select the track 1, arm it, press record and start playing either using Push or the JX3P's keyboard. That works nicely.
But now, what if my mate plays another synth at the time during the recording process? Let's say I'm playing the JX3P keyboard while my mate is playing some nasty bass on the mopho keyboard. Since track 1 midi to is set to "all ins", the track will receive midi data from both the JX3P and the mopho synths. That's very annoying because I don't want midi notes from the mopho to be recorded and interfere with my JX3P performance.
So I'm looking for a way to fix that. Obviously, the easiest solution would be to change the "midi in" setting of the track 1 from "all ins" to "Port 1" or to "Push2 input" just before recording. I'd like to avoid doing that because it would slow down my workflow a little bit.
Any idea? Could a dedicated MAX patch solve this issue ?
Cheers
D LW, Happy New Year to you, too! I know nothing about Ableton Live, but since no-one's had a crack at answering your question yet….
First, a question from me: if you have Max and Live open at the same time, do "From Max 1" and "From Max 2" (or similar) appear in the list of MIDI sources in Live? (That's what they're called on Mac; dunno 'bout Windows.)
If so, then yes, a patch could be created in Max that determines - on the fly - which MIDI signals (i.e. which ports and channels) get sent to "From Max 1" and "From Max 2" and, therefore, into whichever tracks in Live have them as MIDI sources.
There are probably other ways to do it, too, for those who know about Live.
Hi Bill!
Thanks for your answer.
I'm affraid Max doesn't appear in the list of Midi sources.
Max can be added to a track like a regular midi or audio plugin.
Here's what it looks like in live :

I created the following patch to be able to set the port I want to use but it doesn't work at all. I'm pretty new to Max so that's probably the reason why ;-)

Within M4L the midi port can't be set. The M4L device receives Midi input only from the track where it resides (like a plugin).
Hi Broc
Thanks ! So when your track receives a midi input there is no way to create a M4L device that would allow only the midi messages from a specific midi port (or would block all messages from specified midi ports) ?
Port assignments are not part of the MIDI protocol, so no, you can't use that information to route MIDI data within an M4L device. What you could do, would be make a Max Standalone patch that handled all of your MIDI routing according to which port you want to listen to/pass to a particular input in Live. I think you were a little confused when Bill mentioned a Max patch, and you were thinking of a M4L device. I'm sure that it's possible as well using Live's built in track/routing possibilities, but I found your description a tad confusing, so i have no concrete advice.
Yes you're right. I got a bit confused.
@Evan, I did my best to rewrite my description to make it more clear. Feel free to tell me if it is still confusing.
Thanks again for all your answers.
I think you can get where you want simply with Live's built in routing. Here's how I would do it.
I would set up an output track for each synth, and set the inputs to receive JUST from the Push. Then create an input track for each of the external MIDI devices that takes the MIDI in ONLY from that device. Then you can send MIDI from the dedicated input tracks, to the appropriate output tracks via the 'MIDI to' menu.
This will give you tracks that can record MIDI from the Push, and also one other source with getting MIDI from the other external sources.
Yes it would do the job. We thought about that solution too.
However, the main problem is that we would have to deal with twice the number of tracks as what we would really need (7 tracks).
It could a bit messy, especially in session mode.
What about bill's solution? How would it work?
It's going to be way more work to create a MIDI roputing matrix, then just doing it all in Live. If someone else wants to chime in with a potential solution I'd be interested to here it. But I am always a fan of not rebuilding something that's already there.
If I was using 7 external MIDI/synths, I would expect my session to be a little messy...
Hi, you can get access to all you MIDI data in M4L using the following externals if that will help:
Sounds very promising. I just purchased the device but I can't make it work.
I've just sent you a message at m4l@sigabort.co.uk
Cheers.