Jump to content

Max/MSP


Adieu
 Share

Recommended Posts

  • 1 month later...

Hello Max heads, I am trying to figure out a new paradigm changing M4L device (yeah, right :eyeroll motion:), I thought I would ask this thread for tips.

The basic idea is that I need to have a MIDI device running on a track in Ableton that is looping some MIDI (or just accepting input from a keyboard or whatever source). Let's say this is the "carrier" track.

Then I need to have that MIDI device (on the "carrier signal" track) receive incoming MIDI from another Live track. Let's call this one "modulator".

The practical use case I have in mind is recording a MIDI loop on the "carrier" track, and then transposing/forcing all the pitches to be what I play on the "modulator" track. I have hacked something like this together with a janky Pure Data thing - and its super fun to play - but now its time to up the level and do it all in M4L.

I know that a M4L device can only accept MIDI from one channel, so I guess the main technical blocker for this thing is figuring out some way to have the "modulator" and the "carrier" devices communicate with each other. Well, as a dumb workaround I think the "modulator" can just send the pitch values in a reserved range like the C-2 octave, or I could figure out some hacky hack to convert the incoming noteons to CC messages that the "carrier" decodes to a set of pitches.

The 2nd difficult part to figure out is how to repitch the notes on the "carrier" track. In my previous experiments I used the Scale device to force everything into the "correct" notes. I do not really want to reimplement that device in M4L, so I wonder if its possible to somehow make my "carrier" device just be paired with a Scale device by way of some automation mapping hooks or something.

I am also like 99% sure someone already built a thing like this, but I can't find anything like this online (and of course I have not really tried either 🙂 ).

 

Thanks in advance for any pointers.

Edited by thawkins
Link to comment
Share on other sites

I did a workaround once for the MIDI limitation of the M4L devices.

I think I ended up running a separate Max patch outside of Ableton, which was exchanging MIDI with the M4L device via TCP/IP. It was all running on the same computer, so it was low latency and easy to set up via localhost. 

Not at the computer at the moment, so that's just the gist of it from memory.

  • Like 1
Link to comment
Share on other sites

http://fabriziopoce.com/HarmoTools.html

maybe this?

Quote

Harmonization devices in the set:
- HarmoChord: real-time chord detection and chord information sharing to other devices in the set
- HarmoChordFilter: real-time MIDI input harmonization (filter), based on detected chord information
- HarmoScale: scale definition for the entire live set (selection across 40+ scales, in any root)
- HarmoScaleFilter: real-time MIDI input harmonization (filter), based on detected scale information
- HarmoGuessScale: real-time analyser for scale guessing and scale sharing to other devices in the set
- HarmoAdaptFilter: real-time MIDI input harmonization (filter), based on both chords and scale information


 

  • Thanks 1
Link to comment
Share on other sites

14 hours ago, psn said:

I did a workaround once for the MIDI limitation of the M4L devices.

I think I ended up running a separate Max patch outside of Ableton, which was exchanging MIDI with the M4L device via TCP/IP. It was all running on the same computer, so it was low latency and easy to set up via localhost. 

Not at the computer at the moment, so that's just the gist of it from memory.

Yeah, if it's a separate patch, it's already close to something that I had with the standalone Pure Data patch I had for turning note information into CC.

10 hours ago, auxien said:

This looks like something I could use, thanks!

Link to comment
Share on other sites

On 7/22/2022 at 10:58 PM, thawkins said:

Hello Max heads, I am trying to figure out a new paradigm changing M4L device (yeah, right :eyeroll motion:), I thought I would ask this thread for tips.

The basic idea is that I need to have a MIDI device running on a track in Ableton that is looping some MIDI (or just accepting input from a keyboard or whatever source). Let's say this is the "carrier" track.

Then I need to have that MIDI device (on the "carrier signal" track) receive incoming MIDI from another Live track. Let's call this one "modulator".

The practical use case I have in mind is recording a MIDI loop on the "carrier" track, and then transposing/forcing all the pitches to be what I play on the "modulator" track. I have hacked something like this together with a janky Pure Data thing - and its super fun to play - but now its time to up the level and do it all in M4L.

I know that a M4L device can only accept MIDI from one channel, so I guess the main technical blocker for this thing is figuring out some way to have the "modulator" and the "carrier" devices communicate with each other. Well, as a dumb workaround I think the "modulator" can just send the pitch values in a reserved range like the C-2 octave, or I could figure out some hacky hack to convert the incoming noteons to CC messages that the "carrier" decodes to a set of pitches.

The 2nd difficult part to figure out is how to repitch the notes on the "carrier" track. In my previous experiments I used the Scale device to force everything into the "correct" notes. I do not really want to reimplement that device in M4L, so I wonder if its possible to somehow make my "carrier" device just be paired with a Scale device by way of some automation mapping hooks or something.

I am also like 99% sure someone already built a thing like this, but I can't find anything like this online (and of course I have not really tried either 🙂 ).

 

Thanks in advance for any pointers.

This can be solved by using the imp.midi external

https://www.theimpersonalstereo.com/max-externals

I can confirm that it works.

There's another person offering a similar external elsewhere but I couldn't quickly find it and I should be sleeping.

  • Thanks 1
Link to comment
Share on other sites

Thanks, this may be useful. I feel like the problem with any kind of alternative communication methods is that within Ableton, the audio and MIDI are handled generally as first class citizens - nobody would be using Live if there were any issues with audio or MIDI losing connection inside Live itself during playing. But hand-rolled M4L devices - especially this kind of workarounds - are not first class. Setting up a TCP communication server or other side-channels is kind of sketchy to me, even though it probably works well in 99% of the cases. I think it's my day job is to do with troubleshooting and debugging connection problems and I want none of that in the music hobby part of my life. 😄

By the way, I did a test drive with the HarmoTools Chord-ChordFilter devices on the live stream yesterday and I have mixed feelings.

Initially, the devices work fine, and it's probably more of my problem that my chord knowledge is so sparse that I messed up and did not play the correct chords. However at some point I think the devices lost connection with each other and I had the "controller" device stuck in C maj no matter what I played. This may be related to some stuck MIDI notes on that channel, but it's annoying that there is no simple "clear state" button on the device itself.

I also think that my idea is to be more chord-scale agnostic. I play a chord of some 4-5 notes and the other tracks would just repitch the notes to the nearest matching ones (with the exception of the bass part that should be capped below some pitch to keep the lows in their place).

I think I need some more experimentation to see if I can just use those devices or I need to roll my own.

Link to comment
Share on other sites

  • 2 weeks later...
6 hours ago, iococoi said:

bang on

Was gonna make a joke about sending bang messages with Metro and Uzi ..... but it was a shitter... Just imagine it was something witty.

Link to comment
Share on other sites

On 8/10/2022 at 1:50 PM, mcbpete said:

Was gonna make a joke about sending bang messages with Metro and Uzi ..... but it was a shitter... Just imagine it was something witty.

How about some realtime sysexin, moses?

Link to comment
Share on other sites

  • 1 month later...
On 10/6/2022 at 10:27 AM, d-a-m-o said:

That's really nice, is that your channel ? 

No,its some japanese guy i think. He recently released an album that includes his max msp patches,if you buy it . He seems like an absolute max msp wizard.

Edited by Wunderbar
Link to comment
Share on other sites

47 minutes ago, Wunderbar said:

No,its some japanese guy i think. He recently released an album that includes his max msp patches,if you buy it . He seems like an absolute max msp wizard.

Yes I heard the album, excellent stuff and he's obviously on another level 😅

Link to comment
Share on other sites

Really like Max/Msp but it is just too time consuming 

Im curios who is really having the time here to do proper stuff with the program? 
Give me at least 3 years vacation and I think I will master it okey. 
I know only Noxin here on WATMM that is doing amazing tracks and building stuff, I have seen little of his patches and they are very solid.

Link to comment
Share on other sites

10 minutes ago, cern said:

Really like Max/Msp but it is just too time consuming 

Im curios who is really having the time here to do proper stuff with the program? 
Give me at least 3 years vacation and I think I will master it okey. 

Same here! 😕

These days i use it rarely and mostly just for processing audio.

Would love to get back to it one day tho

Edited by xox
Link to comment
Share on other sites

21 minutes ago, Wunderbar said:

What is max/msp in competition with ? What other musical programming languages are interesting to check out ? If that is what you call them.

Super Collider,Pure Data, Tidal Cycles and FoxDot

Basically Algoritm music you creating yourself.. Tidal Cycles is only for mess around with patterns.  
Both PD and MaxMSP are really similar.

It's a good way to have a little bit engineering head when it comes to PD and MaxMSP.  

Link to comment
Share on other sites

2 hours ago, cern said:

Really like Max/Msp but it is just too time consuming 

Im curios who is really having the time here to do proper stuff with the program? 
Give me at least 3 years vacation and I think I will master it okey. 
I know only Noxin here on WATMM that is doing amazing tracks and building stuff, I have seen little of his patches and they are very solid.

I've been using Max/MSP since the early 2000s. Currently I'm writing all my music all exclusively in Max, recording audio/midi into logic and then editing/mixing there. Over the past few years it went from doing bits of songs into max, to recording large swaths of multitrack stuff into logic and editing it there. Eventually I got tired of all the editing and added some stuff into my patches to essentially arrange/edit the patches there.

It can be pretty time consuming. I'm not starting from scratch each time, I have a template set up that I start from and it has evolved from song to song as well. It can take me a month to get a full song up and running but the interesting part comes after that because I'll end up recording the output and then subsequently tweaking all the variables in the patch and end up with a lot of different results. The last track I did, I ended up recording an hour+ of variations on it. I'm trying to do this stuff in batches and then I'll circle around and edit/mix/finalize the stuff that is working.

I'm not uploading this stuff to soundcloud or bandcamp currently, trying to get the entire album done first because in the past I've spent too much time polishing individual tracks and then I have to go back and get myself into the "songwriting" headspace again. I'm just trying to output as much as possible in one phase of the process and then get to the next one. I am batching it this way into groups of ~4-6 tracks so I at least know where I'm at, and it feels good to finish stuff.

  • Like 3
Link to comment
Share on other sites

It took me like 1-2 working days spread across a few weeks building the Pure Data patch I used to generate (= literally hit play in Live and recorded about 45 minutes worth of loops) the album that I am currently shilling in my signature (https://slowtonecollages.bandcamp.com/album/generations-20200612). So for starting up with MIDI pattern fuckery, it takes very little time to get from learning something and having fun with it.

For audio stuff in Max and Pure Data, I honestly have not bothered to learn much, because that part is infinitely deep and I have never been a sound design type.

Back when I used Pure Data more the problem also was that I could not have the patch with in the Live project, so routing MIDI and audio was necessary, and finally I could not save the whole thing into a Live project in order to be able to come back to it later and have everything working (which is how I like to work more or less). Now that I have Suite, I have M4L and I could do this project based workflow much better, but I just have not gotten into it yet.

 

Anyway my point was that even though the linked videos show some cool and really complex stuff, it's not actually that difficult to get started with Max/PD AND have fun with it. After all, even it sucks ass and sounds like a dying helicopter, you can always sample that stuff and later tell everyone that you were planning to make a drum kit out of it anyway. 😄

Edited by thawkins
  • Like 2
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.