All gen~ version of RNBO’s Freezer example
Hi all, looking for some honest feedback and help on creating a good Freezer/Sample sustainer in gen~. The RNBO pedals freezer is probably the perfect version, but I’m happy with a cheaper, gen~, near-equivalent.
I’ve got it started, but wonder how much of the polyphony in RNBO’s version will be needed. I’m also getting tripped up on the toggle A/B recording to the [data] objects.
The transient detector portion is primitive, I know. Hoping it’s enough for the purpose.
Any feedback is appreciated, thank you!
Late reply here, but I only just saw this. The patch is basically two 8-voice granulators, each one using its own data store.
With a brief look through the RNBO patch I can't see anything that couldn't be done with gen~, but it will be a little bit of work matching up the details.
The "Attack" peak detector will need a couple of running average circuits -- there's some examples of this that have been posted in the forum in the past -- the simplest version of that is to run the signal minus the delayed signal into an accumulator. Rampsmooth~ can be emulated with a slew limiter (like go.slewlimit, or the gen~.rampsmooth example). Thresh~ is just <
and >
. For edge use change
, and for timer use accum 1
.
The Freezer-voice patch looks easier to port. The polyphony here is basically just running 8 copies of the patch, each one with a different offset (via the voice
object) -- you could do this with 8 subpatchers, each one with a different argument/input. The hann~ window is just a unit shaper, there's an example of that in the go book for example. The pan~ is just a log power crossfade, easy to patch.
The EQ patch is even easier, just use go.onepole.hz and atan. And for fade~ you can use go.line.ms.