quantized granulation

ranchild is a granular grandchild. this script was born out of and inspired by @cfd90’s clever twine and @justmat’s inspiring mangl, both themselves based on @artfwo’s amazing glut script, which itself was inspired by @kasperskov’s grainfields. i consider this script to be a grandchild of glut, and child of the other two - using some ideas from twine (randomization in parameters) and some code from mangl (lfos, greyhole integration) and the engine of glut, to make a granular sequencer to fit my personal musical journey.

their are a lot of granulation scripts based on glut, here’s what’s different about granchild:

  • “jitter” and “spread” of granulation always oscillate, with random frequencies
  • “size” and “density” of granulation are quantized, and easily accessed (see layout)
  • sequencer is quantized (using @tyleretters’s lattice)
  • voices limited to only 4
  • samples mapped to 18 keys
  • can record live input
  • granulation can utilize stereo samples
  • each voice has two scenes that can be toggled between

for reference in that demo video above - here are the four samples used. first two are things i recorded with mx.samples, the other two are samples @tehn included on the default norns:

whirl1.aif (843.6 KB)


  • norns
  • grid optional


here’s how the buttons are laid out. use e2 and e3 on the norns to move around and k2/k3 to toggle things. the grid just mirrors the norns screen, so this script works just fine without a grid. grid 64 users: hold k1 to switch between the the first and second pair of voices.

note: when you use the record button for live input, all recordings are automatically saved permanently in ~/dust/audio/granchild.

Old versions

see github


from maiden:


holy Cow! I normally fall for the real time audio devices… but this looks like an absolutely blast! can’t wait to dig in!


Sweet! This looks like it will be all kinds of fun.


Oh! I have been waiting for this one. Cannot wait to dig in

1 Like

super simple, very beautiful!
thanks this is excellent!!!

1 Like

Another gem :slight_smile: hellll yeaah

1 Like

OK, it’s 6.59 am on a Sunday. Go back to bed or install this script? Just kidding, bed is not an option anymore…

1 Like


Extra button to make room for future live input recording more? :crossed_fingers:t4::pray:t4::+1:t4:


I’m in love with this script. I will record little samples all night and granularize them with this script until I fall asleep. Thanks @infinitedigits

1 Like

bravo! you’ve done it again. midi mapped the filter freqs & delay sends & off I went.


When do you sleep! This looks amazing, excited to try today

1 Like

thank you for sharing this

1 Like

oooooo man I think I know what the last button will do

1 Like

Sounds amazing :slight_smile:

1 Like

this looks and sounds crazy good! thanks for sharing <3


This thing is nuts (in a great way)!

Evil drone recorded this morning:

One feature request: it would be great to have an option to set the delay to post-fader per sample. Unless I’m mistaken, it seems like it’s currently pre-fader by default for all channels, correct?

Spent some time reviewing the code to get an idea of how things are well encapsulated. Can anyone point me in the direction of a good reference to what’s happening with the setmetatable call? Is that just for ease of variable declaration?


you sir are on fire.

that video is really inspiring. sounds like teenage summer nights forgotten.


Great demo! Why did I mourn missing out on beads when there’s such amazing granular power right in front of me?


Hey @Tyler , I had the same thought today :grinning_face_with_smiling_eyes:

1 Like

Your great demo reminded me immediately of Sleeping Giant from the Brad Mehldau/ Mark Guiliana album Mehliana. Here’s a live version on YT that always knocks me out…What 2 humans can create in real time:

1 Like