I’m starting to begin the process of converting some of my Max/MSP patches into functional Max For Live devices for myself and all others interested. This is my first attempt, it’s a device titled Pluck: the Grainular Resonance Gate. It’s a rather abstract idea that I’ve found produces very interesting results. It purposefully abuses the resonance of the lores~ object when it is pushed to 0.95% through 0.99%, which produces beautiful lo-pass gate like sounds when it is fed very low speed oscillators or audio triggers. I’ve used the adc~ object with my audio interface to process triggers from my modular system, but in the object I’m using a saw~ oscillator at a very low rate to produce the triggers. The oscillator is also running into a threshold trigger, which bangs out random numbers and begins recording the sounds into a buffer. The buffer can then be manipulated upon playback. The sounds are run into a delay line and reverb for extra ambiance (careful not running the reverb higher than a few notches, the reverb gets pretty gnarly really quick). I know my graphic design has a few flaws (I can’t get seem to get rid of the grey space on the sides), but I’d really love some constructive criticism from some Ableton/M4L users and creators. Let me know what you think, and how you think I could go about improving it. Thanks to anyone and everyone who takes a look/listen, I really appreciate it!
To get rid of the grey space resize the patcher window to the width you want in Max then select Set Device Width from the View dropdown menu.
From a quick play with the patch it seems the output levels are pretty hot. You might want to scale the levels down at the output stage or add a limiter, or for a lazy limiter add a clip~ object before the output.
It helps to get in the habit of filling in the long name field in the object inspector every time you add a new UI object. And also rename if you copy and paste an object.
Yeah that’s why I added the output gain slider at the end, i knew from experience the patch liked to get distorted quickly. I’ll add in a limiter and tweak it to try and fix that further. Thank you for playing with it!
A good way to test and double check the names of stuff is to drag the device into a Max patch and send getparams to the inlet and print the output. You can see the names of each of the parameters exposed this way. You can see almost everything has the default live.dial type names and stuff, so you still want to go through and change that stuff.
It is considered a M4L instrument, so place it into a midi track as your main instrument and it will work. In future versions I will probably make it so you can do both (use it as an instrument and audio effect).
Ah, but it does not react to any MIDI input, right? You just have to turn up Osc.Fr… - took me a bit to figure that out.
The cracking and clipping seems to be internal as it does take place even with all levels pretty low. Especially when using the record… function. So a bit of fine tuning is necessary and changing the knobs gets often noisy.
I was just starting to experiment with this last week, converting a midi instrument into a device that could also take audio. I found that trying to save a M4L midi instrument with an audio input froze my computer. Eventually I recovered the work and resaved it as a M4L audio effect with a receive object for receiving midi notes and then built a companion midi sender to place on a midi track to send notes to the audio effect. Curious if you’ve already come up with a solution for your device and if others have found better solutions for combining midi and audio inputs in M4L devices.