MIDI channels in M4L

    Jan 15 2010 | 11:06 pm
    I'd like to separate midi messages from different controllers within a M4L device.
    I'm trying to do this by putting every device on a different midi channel. However, it appears that if the channel in Live is set to "All Channels", then all the midi messages get mapped to channel 1. Setting it to a specific channel does filter things correctly, but that doesn't help so much.
    Can anyone confirm this? Is this a bug? Is there somewhere this kind of behaviour is documented that I should know about?

    • Jan 16 2010 | 10:39 am
      Confirmed. Live doesn't handle separate midi channels internally. It's a simplification/restriction by design. So you may call it a "design bug".
      As far as I know, this behavior is not mentioned in the Live manual. But in the M4L tutorial examples about midi I've seen a comment like "always channel 1".
    • Jan 16 2010 | 12:18 pm
      Ralf Suckow (Ableton) and I worked a bit with a little workaround about that. It is a w o r k a r o u n d, not a solution. but it works :) Indeed, I consider it as a design bug too.
      the workaround is there: http://forum.ableton.com/viewtopic.php?f=35&t=128795 I hope it could be enough for you. Note if you only need 3 channels, make modification cause send/receive objects are cpu consumers....!
    • Jan 16 2010 | 3:47 pm
      Thanks for the info!
      In the end, since the midi channels was a workaround for me anyway, I'm looking into using MXJ midi wrappers (I should probably be using a c library, but I'm lazy), which seems to be working OK, although I haven't done extensive testing. I'll post some code when it's cleaned up if anyone is interested.
    • Jan 16 2010 | 3:51 pm
      ok. personnaly, I did all my mapping using only 1 channel. It was finally enough! 1 channel = 127 midi notes with 127 values each one + 127 CC with 127 values each one etc
      btw, in my case, it is "only" a controller, so I can "code" things as I want to.
    • Jan 16 2010 | 4:00 pm
      Yeah - my original problem was wanting to use multiple devices in one patch, and I was going to use channels as a workaround. By going the MXJ route, I can setup whatever devices I want, and Live doesn't get to mess with it, and I can mix non-midi devices in with the MIDI ones fairly easily.
    • Jan 16 2010 | 4:33 pm
      Hi Mo-seph,
      Please make your MXJ MIDI Wrappers available for us!
    • Jan 19 2010 | 12:14 am
      A quick and dirty version is up at: http://www.mo-seph.com/MXJMidiDevice
    • Jan 19 2010 | 4:15 pm
      hi sounds good...but i can't find the jar file on your site? i'm really interested because i'ld like to know if it's possible to build a complete setup to handle all my midi hardware (excluding sysex stuff) directly in live (midi in&out port routing, automation, custom midi feedback etc...)
    • Jan 19 2010 | 8:38 pm
      Clearly I need to sort out my web design! It's just after the "Technorati Tags" section, under Installation.
    • Dec 03 2019 | 5:39 pm
      I hate to say this but... can we ripoff the MIDIIN and MIDIOUT code from puredata? We could just build our own multichannel objects....
    • Dec 03 2019 | 8:36 pm
      Just found http://www.sigabort.co/m4l_tools.html
    • Dec 03 2019 | 10:25 pm
      You can also use these externals: https://www.theimpersonalstereo.com/max-externals I used them for a long time in many live setups without problems.
    • Dec 04 2019 | 3:03 am
      Well there's 10 bucks down the drain! oops! Guess it's good to support maxers. I cannot believe how much simpler this has made my ableton situation.