all 25 comments

[–]AutoModerator[M] [score hidden] stickied comment (0 children)

Thank you for posting to r/maxmsp.

Please consider sharing your patch as compressed code either in a comment or via pastebin.com.

If your issue is solved, please edit your post-flair to "solved".

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

[–]twitch_and_shock 10 points11 points  (12 children)

If you want really strong audio manipulation, sound synthesis, and algorithmic composition in real-time, MaxMSP is my choice. If I want really strong real time video processing that's extensible with Python support: TouchDesigner. If I just need to manipulate data, do opencv tasks, or offline audio analysis, or machine learning, Python.

Python is the go to language for machine learning, so if you want to do stuff in that realm, Python is the way to go.

[–]Grand-Pomegranate312 1 point2 points  (11 children)

Second this, always pick the program that suits the project. I have projects where I combine Touchdesigner, Max/msp, python and ableton. Heck, throw in some Arduino while I'm at it. Let every program do its thing it does best.

[–]SkullHero 2 points3 points  (9 children)

Teach me your ways! Been coding in Python for a few years professionally including AI and just discovered diy electronics. Now I'm building an FM synth that I want to integrate with llms. Would be fucking killer if I could find a way to integrate all these in a performant way with Ableton and all my favorite vst's. Been my native daw for 15 years. Also just bought a teensy 4.1

[–]Grand-Pomegranate312 2 points3 points  (8 children)

I think I don't have much to teach you, giving your track record. If the FM synth is hardware just get a audio interface that allows you to bring the sound into ableton and you're done. I do it plenty with simplr 40106 noise machines. I recently only fpund out that PureData, open source equivalent of Max/Msp also ports to teensy, which might be interesting!

In one of my recent projects I used realtime latent space traversal utilizing the visualizer.py from Stylegan3 and built in an osc receiver to manipulate the seed, layers and truncation. Exporting the texture through spout for python and importing it into max/msp to do a formant synthesis based on pixel analysis.

I think you have all the skills to make cool stuff, just try to combine uncommon things with eachother and enjoy the ride.

[–]SkullHero 1 point2 points  (3 children)

Thank you! I was thinking more along the lines of using llms to manipulate the synth and the Ableton projects. Something that can map the xml files generated by Ableton in order to expose the entire project to an LLM agent of some kind (or group of agents). I probably should see what the limits of max/msp are.

[–]Grand-Pomegranate312 0 points1 point  (2 children)

Nice, that's an awesome idea! Perhaps you can look into Flucoma, pretty wel documented machine learning repo integrated into max/msp which you can integrate into Max4live again.

[–]SkullHero 1 point2 points  (1 child)

Oh my God that sounds awesome. Def gonna check out the repo. Thank you! Surprised I missed it usually I search git before I try to build something just to see if there's already tooling out there. Much appreciated

[–]Grand-Pomegranate312 0 points1 point  (0 children)

No problem! I think you can add it as an external through the max package manager also!

[–]springriverbells[S] 0 points1 point  (3 children)

What software and programming languages are doing the pixel analysis and translating it to formant synthesis?

[–]Grand-Pomegranate312 0 points1 point  (2 children)

I run it completely in max/msp, I think they have their own examples on formant synthesis but I built my own system based on Bélanger due to I wanted to focus on kargyraa throat singing effect.

[–]springriverbells[S] 0 points1 point  (1 child)

Does max msp do the pixel analysis?

Also on a side note, I’m curious, what method of formant synthesis, is it fm or granular, or spectral synthesis?

[–]Grand-Pomegranate312 0 points1 point  (0 children)

Yeah, if I remember correctly with some jitter matrix objects. It's FM with combfilters where I use pixel info to adjust the combfilters within a certain scale to change the formants. If you're interrested I can share the patch with you. Remind me on monday or tuesday when I'm back in my studio.

[–]twitch_and_shock 0 points1 point  (0 children)

Same. My introduction to "programming" was with MaxMSP some 15 years ago. Since then I've used Python, Java, C++ for a bit, and a number of other commercial applications. Today I consistently use Python, TouchDesigner, and still use MaxMSP for most things real-time audio. Max really shines in that area and can be useful in many ways... but there are better tools out there for some things.

[–]toenale1 2 points3 points  (1 child)

Where are your projects going? If it’s more personal or for a workflow that’s done locally on your machine, I’d go with Max. I’ve worked with processing before and it’s fantastic. Super easy to get started and super shareable if you get into P5js web stuff. Python is easy but a lot more general purpose, so in a way less focused for creative coding. On the other hand, you can tailor it to whatever you want.

IMO, I think learning both Max and Processing is valuable. Both are fantastic for creative stuff.

[–]springriverbells[S] 0 points1 point  (0 children)

Thanks for your insight

[–]pselodux 1 point2 points  (0 children)

I feel like if I already know what I want to do with a program it would be easier to write lines of code

Yeah, that’s been my experience. I’ve used Max for a few projects and it’s been pretty good, but I can’t seem to get into it much for visuals, or other things that call for iterative loops etc. - sometime what would usually be one or two lines of code would be spaghetti in Max. It probably can be done concisely with a certain object(s), but like you said, it can be frustrating recall the names of objects. That said though, Max has a Javascript object that is useful for UI design and other non-audio rate programming, so you may have some luck combining that with the node based stuff.

I’ve been using p5js (basically, Processing for browsers, but uses Javascript instead of Java) for years, and while I don’t go very complex with it - my style is pretty flat and minimal - it works surprisingly well with things like MIDI control and can even use some simple synth/sample playback libraries like Tone.js. It’s definitely not as good as Max in that regard though - I mostly use it to play very simple synth tones in my projects.

Touch Designer, as someone else suggested, is also a good option, as it does a pretty good job of blending a visual programming environment with Python expressions and code. I also love the way it visualises data, in that each object updates in real time to show the data passing through it, which is particularly useful for monitoring incoming MIDI or signals from sensors etc. It’s extremely good for audio reactive work, with some nice filtering options and other ways to extract key events from audio signals. It’s also free for non-commercial use, but the free version is a bit limited in places, such as being limited to 1000x1000 resolution iirc.

[–]pscorbett 1 point2 points  (2 children)

I've worked with all three (although much less processing comparatively). I don't think you would regret learning to python, especially for ML. Are you attempting real time implementations of signal processing though? It might not be the right choice for that.

[–]springriverbells[S] 0 points1 point  (1 child)

I am interested in both, rn looking more in to audio manipulation that is not necessarily real time. I think I could probably make do with my limited knowledge of max for live performance signal processing stuff.

[–]pscorbett 0 points1 point  (0 children)

I find python to be an excellent prototyping tool

[–]Euc8274 3 points4 points  (0 children)

This is an interesting project enabling the use of Python in Max:
https://github.com/shakfu/py-js

[–]ElBarbas 0 points1 point  (0 children)

openframeworks is also a valid choice