M4L device as a midi control surface
Hello.
I have a simple DIY midi controller with few buttons and faders.
Everything is working perfectly when I want to map Live's parameters.
Now I made a maxmsp patch that grabs the informations from this controller and adds some functionalities.
For example : I added double clicks functions, or others functions if two buttons are pressed in the same time, etc.
In the [midiin] of the patch I have my hardware midi in, where the controller is plugged.
In the [midiout] I use a virtual output (LoopMIDI Port 1)
This device is working perfectly if I load it in Max (not in Live) and If in Live I choose LoopMIDI Port 1 as a remote.
But If I paste my patch in a M4L device, impossible to map which is going from LoopMIDI port 1 to any Live's parameter..
The littler square at the top right corner in live is showing that midi informations are well enterring, but nothing happens when I try to map parameters..
Is it a Live limitation ?
So, how can I achieve to use this patch IN live and without MaxMSP opens in the same time ?
Is it possible?
I have pasted my Max patch in a m4L midi device.
Setting the midi in track where my controller is plugged to the same entry.
It seems that the information is well sent to LoopMIDI but that LIVE dosn't want to handle these informations for mapping because they are transmittted within Live and not from "outside"...
If some one has an idea.. it's welcomed !
Thank you !
Julien
no patch - no idea
sorry !
here is an example of my problem.
I thought that my question didn't need a patch...
I just wanted to know if it was possible to change a controller information through a m4l device and output the changed information with a virtualmidi port to live and map these new CC to a live parameter..
Sorry if I am not very clear =)
thank for your advices.
julien
Live does not send midi out from m4live device, but
out of the track where it is inserted,
Plugin can't set the midi channel to send, all is
handled by the track settings
That's the limits of Live
And monitoring must be set active
P.S. I undestood that you want to receive midi into live track, remap it
and send out of Live via midi.
Maybe I got that wrong.
But if you want to route CC values between mac4Live devices more flexible,
you could use send / receive objects or OSC to overcome Live's midi
routing restrictions
Apparently you want a "loopback" function, sending midi out from your device/track and back into Live as remote input. This can easily be done on Mac with IAC. For a solution on Windows just google 'loopMIDI' and 'loopback'. As far as I see it simply works by choosing different port numbers for output and input.
thank you all.
@BROC : I am already using loopMIDI in this example and don't manage to have a "loopback" function..
Try asking on the Ableton Live forum as it seems basically a Live on Windows problem, namely how to send midi output from a track back into Live as remote input (which can be done with IAC on Mac).
LoopMidi mutes ports if midi loopback is detected.
To avoid that, you must take care that tracks in Live
allways send to port/channel different than one on which they receive.
Then it should work.
You must keep LoopMidi window open to see when it gets muted.
LoopMidi has settings for feedback detection,
but the problem is that live sends pitchbend 0
on all channels whenever one track changes midi output destination.
That can lead to fast buildup of feedback messages.
P.S. it is verified to be working on live 10 & windows 10 & loopMidi
Hi source audio,
Great! First time I see a clear description of midi loopback on Live&Windows. LoopMidi seems even better/safer than IAC. But I wonder how data can be transmitted if output and input are on different ports. Can you explain?
As far as I can say from a short test, it is not live that is causing problem, but loopmidi
which detects midi feedback and mutes the ports.
So same as on IAC buss, you just take care that midi does not feedback.
What matters is that if you receive on Port 1 Ch 1, don't send it to same
destination.
Port 1 Ch 2 should be ok.
Or Port 2 Ch 1, just not real match.
I tested this morning on Live.
Max (standalone) sent midi CC1 on LoopMidi Port 1 ch 1 ( 176 1 $1)
In live I made midi track, input Loop Midi Port 1 Ch 1 ( NOT DEFAULT "all Channels" ! )
inserted CC router plug just as test form CC #1 to CC #2.
That Track's output set to LoopMidi Port 1 Ch 2
Made another Track in Live - Input Loop Midi Port 1 Ch 2
Output Loop Midi Port 1 Ch 3
etc
And it does not matter if you make several Ports,
it works the same, receive on any port send on any port
just don't match port and channel or use All Channels as input
So in your example, to send midi from one track to another, output and input port must be the same (Port 1 Ch 2). This also applies to loopback, ie. track output and remote input must be on the same port. But now LoopMIDI detects feedback and mutes the port. So finally there is no solution or am I missing something?
No, it is simple daisy chain.
Input into track from any source, output from track anywhere else just
not to track itself.
Or are you trying to find the way to send midi from track to itself ?
What would that be good for ?
maybe I misunderstand loopback ?
I thought question was to route CC coming from
one source to multiple and reassigned CCs to another destination.
That would be midi input from hardware controller (or Live track)
to another Live track, and ev. from there to another Live track.
Hello,
I'm not sure that a "loopback" function is needed here...
..all I am looking for (as shown in the posted example patch) is to grab value from my controller in a m4L device, change it in this device and then output the changed values in Live to map a parameter. Everything is working good but these new values (well recognized by Live) sent trought loopMIDI doesn't seem to be used to map live's parameters.. New values make the midi square activity blinked, but mapping are not working..
I don"t reaaly understand what "loopback" has to do with this...
..the CC information is only going in one direction without any return needed..
For information, there is no feedback in my setup, CC are coming from a simple midiface 4x4 interface, modified in the device and sent to loopMIDI port 1.
I just ask then to Live to listen CC from this loopMIDI port 1 to map parameters..
I am just trying to send CC from a m4L device, trought loopMIDI and make Live abled to use these CC to map parameters...
sorry for my dirty english =)
In all cases, thank a lot for your advices !
Just to clarify: "loopback" means routing data back to their source.
And that's exactly what you need, namely routing track output of Live back to Live (the source) as remote input.
Why do you need to send something out the device? Map your CC inside the device to Live Parameters..(LOM) Or what do you want to map if you have the CC back in Live after going into Live to go out to go back in?
Good point!
The loopback method is "old school", not really needed with Live.
But easy to use, at least on Mac.