FBLP (Simple Feedback looper)

Not sure if this module works properly for others, but here is an SSP module for a Feedback Looper I made with the Max RNBO template.

Max RNBO template - user created modules - SSP SDK - Percussa Forum

I made this for my real-time performance with a midi pad to synchronize multiple Looper & easily record and erase.
The link below is a Zip file containing the RNBO patch and the .so file for the SSP.

The function is simple.

[in&out]
In-0 = Audio-in
in-1 = Gate for REC (Gate-on=REC, Gate-off=stop REC)
in-2 = Trigger for Reset buffer’s position to start position
in-3 = Trigger for clear Buffer’s data
out-0 = Audio-out

[Parameter]
Monitor level of audio-in
Recording level
Feedback level from recording buffer

Combined with the STE module, it becomes a Looper that loops in sync with the BPM.
In that case, put Gate at the 1st step of STE and put the gate signal into FBLP’s in-2.
Buffer size is fixed to 748000 samples (MAX 4 bars @ 60 BPM).

Hopefully this module will help somebody with something. :slight_smile:

7 Likes

Cool, sounds like fun.

Also, thanks for including screenshot of patch, it was really interesting to see how it ticks… at a glance :slight_smile:

1 Like

Thanks,
If the machine power allows, multiple tracks can be recorded simultaneously with this, so if I play a sampler which has the Individual Outputs through a midi pad and record it, I can control each track recorded in one play and create various variations.
So, It’s fun because I think I can do tricks that can’t be done with a looper that can only record one track at a time.

recording should not take up that much cpu… its pretty much just reading and writing to memory.
the ‘limit’ is more memory…

just be careful - if you increase memory usage too much, it may start swapping, and that would be really bad.

a couple of ideas for you…
its possible in RNBO to dynamically resize buffers, which you might find useful.

I tend to use a phasor to drive reading of buffers…and have everything driven by the % of buffer.
e.g. start/end is not sample number, but position % of buffer length.
this has the advantage of not being at all dependent on buffer size.
and also using a phasor means you can speed up/slow down recording and/or playback.


multi track - yeah, whats interesting about all these modules, is we can have multiple!
so indeed, you can use multiple instance of LOOP… to have parallel recording.

what then becomes interesting is using things like MMX4 , or MSW8 - to mix or switch the input and outputs.

also things like LOOP and GRA4 can record and playback simultaneously, this creates more FX like options esp. when using smaller buffers.

but yeah, lots of options…

I like what you have done something with feedback, its something Ive meaning to add to the likes of DLYD - but just didn’t get around to it yet.

and that’s what I like about RNBO, anyone can have a go and create something more specialised.

3 Likes

The dynamically resize buffers is interesting.
It might be useful to have a parallel multiple looper for cv that can record gates and triggers and send them to the sound source while skipping values to keep the buffer size smaller to save memory.

2 Likes

recording ‘events’ in rnbo might be a bit tricky… though not impossible.
(max/msp has seq~ but I don’t think there’s anything similar in rnbo)

what you could do easily is just to read a buffer at a much slower rate… as you don’t need audio rate resolution…, e.g. run it at ‘control rate’, so something like 480 hz, so you use 1/100th of the data… and still plenty of resolution for this kind of thing.

(if you want to record ‘analog’ values at control rate, you can still do this an use slew, to get a less steppy feel)

Wow very nice to see s o else plunging in Plugin programming
Good approach I guess, will try it :smiley:

1 Like

Thanks.
I’m putting my test modules into one topic.

2 Likes