Best way to learn Max & DSP

Watching tutorials on YT these days (I’m on Max 8, thx @Groof).

My first goal: automating some of the work I do on recorded live sessions in Ableton live, and for starters cutting the long silent parts and normalizing what’s left.

Second goal is to generate crazy glitches, and I like what I was hearing already in the video above ^^

Any input welcome!

3 Likes

@LyingDalai what are the odds?! I’ve actually spent all day working on a M4L device!

1 Like

Check This:
https://www.youtube.com/user/MUST1002/playlists

Basic, but good to learn some important things.

1 Like

Max/MSP is good at real time processing, but to process files “offline”, that my be quite hard and tedious. For batch processing audio files, I use Twisted Wave, which I believe can do what you’re looking for.
Not sure what experience you have in Max, but what you want to do might be much harder than you’d think.

1 Like

Oh? I thought M4L could be a good way to debut her the audio clips in Live, basically piloting Live capabilities… I might be wrong though.
I also think M4L can embed some NodeJS now…
But indeed, processing my recordings offline might be tedious. Still learning the thing ^^

2 Likes

Not 100% sure what you mean but you don’t have access to this type of stuff with clips via the API.
Everything you can do with it is in this document.

:thinking: Mmm indeed you might well be right.
I have to dig further, it’s hard to tell from the documentation of Live API
But thank you very much for the link :thup:

No probs. Feel free to contact me whenever you start messing with Max and Live API, I’d be happy to help !

2 Likes

:pray:

How did it go? I’m starting it now :wink:

Start simple, get it to work and then slowly add functionality… Honestly the best advise I have ever got and I keep forcing myself to remember it. I don’t really use max, but my understanding is that it is super easy to get overwhelmed with complex patches etc.

4 Likes

I’m about 3 weeks in and I haven’t signed up to any proper courses yet, though I’ll probably have a look at that Kadenze course later this week.

I think I’ve been pretty successful so far by picking an element that I want to learn, then searching for that specific thing on YouTube, watching enough videos to get an idea of what objects I need, then using the help pages to dig deeper into functionality before building some stuff (or copy and pasting from the help patchers) and seeing what comes of it.

It’s often a good idea to keep the console open while patching, as you will get messages telling you where you’re going wrong.

Also, make sure you have a good read about integer and float numbers, what the differences are and how to utilise each of them effectively.

I’ve made a conscious choice to not get too deep into using message boxes at this stage, as a lot of patching can be done without using them and I can do without the extra layers of complexity while I’m learning the fundamentals.

Basically, I’m enjoying learning it because I’m staying very disciplined about the specific tasks and features that I’m learning and not letting myself get too distracted adding loads of cool stuff to patches that I haven’t figured out yet.

7 Likes

That´s probably the best approach. I am always a big fan in any type of software related course to learn the foundations first, make sure I understand them, and then slowly keep building up. I also try to keep away from tutorials that make “cool” stuff, as most of the time the techniques or workflows arent explained along with it.

The kadenze course, even if I just covered the first week, looks pretty well organised and explanations are really well made. The teacher is very clear and the rythm of explanation is pretty nice, so the emphasys he puts when explaining :slight_smile: and also assigmnets seems pretty interesting to me.

Looking forward to keep learning it!

1 Like

This is a great intro to DSP theory by Jack Schaedler who worked on Ableton’s Learning Synths:
https://jackschaedler.github.io/circles-sines-signals/

As for Max, it’s a good way to start dealing with digital audio. I think the main benefit of using it is that you don’t have to worry about deeper technical topics right away (e.g thread-safety) and can instead explore things more from top to bottom.

The way I have progressed using primarily Max is that I started using the built-in signal processing objects (FKA MSP), moved onto building more custom things in the Gen~ framework and now I’m just writing code in Genexpr, which is the language/code component in Gen. It’s not far off from how you’d write DSP algorithms in C++, and is because of that not hard to port over either. I felt that this was a natural progression and also allowed me to be creative and productive along the way.

The downside of Max is that there are a lot of bad practices that you might pick up along the way just because of how the “language” works. A lot of things just aren’t that sensible to do in Max, but if you’re already used to it you’ll end up doing it anyway. Then years later when you finally decided to pick up a more traditional language you’ll be kicking yourself that you didn’t do it earlier. :slight_smile:

But all in all, I think it’s a good way to get into signal processing, especially nowadays when you can progress through these different layers of complexity down to something that has use outside of Max.

The most important thing is really that you’re just very curious to learn how these things really work.

10 Likes

I’ve thought many Max workshops (mostly to interaction design students, not specifically sound related) and this is perfect advice.

Your greatest friends: the help patches and the console.

2 Likes

Bought this book, highly recommended:

Generating Sound and Organizing Time

2 Likes

I’ve found a good time to watch some Max tutorials is when my kids are being twats and I want them to go to sleep. Seriously, I bang one of them on and they’re out harder than Apollo in Rocky 4.

7 Likes

MAX Question

is there a way, place, to learn about optimization? Im CERTAIN the Ae patches are crazy, watching that Ae patch vid, he moves around with ease.
ive got something simple going and anytime I move the mouse, it causes MAX to stutter.

id just like to be directed to where I can start looking for and learning optimization practices.

ive also got an OLD computer. But not as old in comparison to how long Ae have been using MAX. or anyone else for that matter. Ae are just a good example of way complex patches…Curtis Roads [I think he used MAX].

1 Like

Sounds like you might not have “Overdrive” enabled for the schedule – this is pretty much essential for keeping thing in time when using event objects (i.e those that do not have a tilde)

Plus, you should also enable “Audio Interrupt” which ensures the timing of audio events is prioritized as well.

Besides that you might want to tweak your “Signal Vector Size” and “I/O Vector Size” values a bit. If your computer is on the older side you might favor a larger I/O vector size like 512 while the signal vector size might work well around 128. (Could try a little higher, up to max the I/O vector size)

You can find all these settings under Options > Audio Status

3 Likes

Thanks!

Currently I’m doing all MIDI stuff. So audio buffer does not apply here [for now]

Does any of the aforementioned apply to midi? [vector size?]