Oopsy Granular?

Hi!

I’ve dig into some example for making granular synthesis in gen~ but I’ve just founds example that use buffer and data obj as file reader. I would like instead to have a direct input to granulaizer, sorry but i’m quite noob to gen~ and haven’t use max for a while…

(Sorry didn’t see this sooner – I usually just check the Oopsy section of the forum)

One way to adapt those is to replace the [buffer] with a [data] object, and have something write to the [data] in a continuous loop.

e.g. for a 20 second buffer at 48kHz you can have [data buf 960000]. Daisy has tons of memory so you can make the data quite large if you want. I ran an example using about 3 minutes of 48kHz memory with 32x readers, it worked fine. Maybe start with a small one just to test though, and then scale up later if it makes sense.

To continuously fill the buffer, use a [counter] with the length (3rd input) set by the data length (data’s 1st outlet) to get the write index. Route that to a [poke buf]'s 2nd input. Route an [in 1] to the poke’s 1st input as the source.

Now anything that would granulate a buffer can now granulate live audio input. You can also set up a “freeze”/“hold” mode by setting the poke’s input index to -1 while hold is enabled.

If you want something like Clouds’ position input, just subtract from the current write index (from the counter) and make sure to use @boundmode wrap on your readers (peek/sample/etc.).

Basically, it’s totally feasible to build a Clouds/Beads type of patch.

3 Likes