Blndr

blndr

a quantized delay with time bending effects.

blndr4

examples of normal mode

no effects:

just delay (bpm 120, level 0.2, spin 0.0):

wackest (bpm 120, level 0.4, spin 1.0):

examples of reverse mode

hit K1+K3 to enter reverse mode

reverse mode (no effect):

reverse mode (bpm 90, level 0.5):

this is blndr - my first patch. blndr is a quantized delay with optional time bending effects in the stereo field. this would not have been possible without the stellar softcut tutorial and inspiration of randomizing speed shifts from bounds. also i have a lot of inspiration and aspiration to recreate the drums from outkast’s ms. jackson.

Requirements

  • audio input
  • norns

Documentation

blndr6

the line-in audio is fed into a delay loop for a duration of one quarter note, so it automatically becomes quantized to the bpm (ENC1). the amount of delay can be dialed in with level (ENC2) and feedback (K1+ENC2).

the delay loop is randomly time shifted based on the probability from the spin parameter (ENC3). the audio from the delay loop is then fed into a second delay loop that is also time shifted and panned randomly.

the K2/K3 are used to quickly speed up/down the bpm to 1/3 intervals to get some cool polyrhythms (good for drums).

the K1+K2 to toggles muting incoming audio.

the K1+K3 will toggle reverse mode which is a delay that outputs notes in reverse.

Download

v0.6.0 - https://github.com/schollz/blndr/archive/v0.6.0.zip

63 Likes

Always happy to have more softcut scripts in the library.

2 Likes

@Tyler true :slight_smile: there are lots of softcut scripts already but i wanted something pretty specific. also i’m new to norns/lua and i thought making a thing to do x might be the best way to learn the system.

i added a little update (v0.2) that lets you use KEY1+KEY2 to toggle the line-in monitor (so it can be used as a ext effect). also i tried making the pitch shifts less abrasive by limiting their jumps to <200%.

4 Likes

Super fun! Nicely done!

2 Likes

thanks all.

i’m still improving it. as i learn more about lua / softcut i’m getting better able at translating my thoughts into code+music.

i released a new version, v0.3 which fixes some bugs (i had use the same variable i in nested for loops :man_facepalming:) and i changed the speed changes to occur slower (every 2 notes instead of every note) so that slower speeds get a chance to ring out.

here’s some a/b analysis using drums and bass playing at 90bpm.

no effects:

just delay (bpm 120, level 0.2, spin 0.0):

wackest (bpm 120, level 0.4, spin 1.0):

7 Likes

totally in love with this effect now.

i pushed the effect onto a song - this is a cover of Gil Scott-Heron’s ā€œI’ll Take Care of Youā€ as inspired by the cover by Makaya McCraven. the blndr effect starts as a straight delay in the beginning and then transforms into the time-morphing after the intro. the time-morphing is totally random so each time i play the song i get different results. it’s also subtle, in a good way, as not to overpower.

can’t wait to take this effect more places :slight_smile: also i’m already thinking towards new effects :smile:

9 Likes

new version released: v0.4

in this version i added a new mode to this effect: reverse mode. hit K1+K3 to enter reverse mode.

the reverse mode does a quantized delay but
attempts to delay a reverse of each proceeding phrase.

here is an example with my piano playing:

reverse mode (no effect):

reverse mode (bpm 90, level 0.5):

i’m interested in improving it, namely by syncing the down beat to the incoming audio (i.e. when the audio is above some kind of threshold). does anyone know if norns has a trigger on incoming audio threshold?

edit: to answer my own question, it seems that you can trigger on incoming audio threshold using polls:

p_amp_in = poll.set("amp_in_l")
p_amp_in.time = refresh_rate
p_amp_in.callback = function(val) 
  print(val)
end
p_amp_in:start()
11 Likes

@infinitedigits
i FINALLY dug into this beast of a script!
wow…what an amazing rhythmic mangler!

when slaving to MIDI clock should the display change to the incoming MIDI clock BPM?

1 Like

thanks! i also enjoy how it mangles drum beats

yeah i don’t think it slaves to MIDI at all at the moment, that’s on the to-do list though!

2 Likes

oh yeah!
i ran a NAVA 9 through it for last night’s noiz session.

ok.
it works really well!
i look forward to the next update!!!

thanks!

1 Like

Hi @infinitedigits,

I hope you’re doing well. When selecting blndr the screen goes black on my norns. I can still hear the effect working but no graphics.

1 Like

I’ve had this issue as well. Pressing K1 twice seems to fix it.

2 Likes

thanks for letting me know!

i had forgotten that i had started updating it and then stopped, so maybe you had the latest version? i rarely leave the latest version broken but it looks like i did accidentally, sorry!

in any case, i’ve updated it now:

v0.6.0

  • stereo recording and spinning! each channel (left and right) have independent spinners and emit sounds on their own, as it did before, but with stereoness now.
4 Likes

Great news! Looking forward to giving it a whirl! :grinning:

1 Like

My three-year-old and I love this patch. We’ve kind of made an improv band, I loop a note or two on bass guitar and he counts to ten and shouts animal names into a microphone while running around the mic stand. And then the whole thing goes into blndr. My old ears think it sounds like some sort of punky avant-garde but he insists that it’s disco.

(Sorry, I don’t have Facebook to put these stories on – but from the bottom of my heart, thanks for the patch, it’s magic)

22 Likes

I love everything about this, thank you for sharing😊 if you ever release a avant-garde punk disco album I’ll be in line to get one.

1 Like

For some reason I keep thinking Blndr is capitalized. Anyway, here is a video I made feeding a slowed down Enya cassette through Blndr and Organelle.

2 Likes

I really like blndr. But as soon as I turn the knob to change the bpm to fast, my norns does not react anymore to any changes (knobs or switches) and sounds weird. Does anybody else have this issue?

1 Like

I believe its a bug with how I wrote the script - there are too many redraw()'s I think (which get triggered by encoders too oops) and it gets overloaded. this was my first script and its a mistake I stopped making quickly but never fixed here. never occurred to me because I usually don’t mess with the encoder much with this.

I’ll put a tlc update as soon as a I get a chance. this still remains to be one of my favorites and I use it all the time so I’d like it to work well for others too.

4 Likes

Thank you so much for your work! (btw: I bought the norns because of barcode, oooooo and blndr. They are exactly, what I was looking for.)

1 Like