This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

or read here, don´t forget your username
(August 19, 2021) x

People who donate something do not see ads, so donate Smile (April 06, 2022) x

Willkommen aus Music-Society, dem etwas anderen Forum Welcome from Music-Society, the something different forum (February 29, 2020) x

Read the Rules !!!

This forum uses Lukasz Tkacz MyBB addons.
(February 29, 2020) x

Visit the Future of music-society - Beta-Test
(October 30, 2020) x

Read the new download-rules - here
(July 24, 2021) x

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
vsti,vsti3,au,aax GranuLab

[Image: grannyvst_2018-09-10.png]

GranuLab is a granular resampler with some fun control options. All changes are gradual over time, so it's suitable both for long drones and for trashing a drum loop.

By rasmus ekman.

Basic use:

Drop a soundfile (WAV/AIFF) into the empty box to get sound going.
(or right-click / apple-click to open file dialog).
Drop granny.json file on the patch drop button first time you open Granny in a DAW.
Every setting/param you change is applied over time: 0-600 seconds (10 minutes).
Change time is set by the "time" knob in the Patches box, lower left.
Shift key to fine-tune values and controllers.
Control-click to set default value of param knob.
Keyboard digits 0-9 sets exact value (nearest 0.1, 1 or 10 dep on range).
(BUG: Not correct for grain freq since this is an offset from 1:1. Will do something...).
Right-click for options menu (on patch slots and controller boxes).

MIDI note changes Grain Frequency. Note C4 (=60) means zero offset.
Granny is monophonic, plays the last note. and switches to previous note when released.

If you send a MIDI note, Granny switches to only use MIDI note input.
The dark blue ADSR is used (the light blue below is for controls).
If you want continuous sound after that, raise the start/end value of the ADSR and hit a note briefly.

How it works
Sound is created by playing back many small sound clips, "grains". Each grain is a mini-sampler with fixed settings that plays a part of the sound once and then disappears.

The Soundfile is shown with amplitude (red) and "noisiness" (yellow) curves overlay.
These values can be used in a controller to influence any parameter.
Select a part of the sound by mouse in the sound box. Shift-click to drag the selection.

Grain parameters:

Sound playback rate. Below soundfile box. Default is 1:1 normal play. Control-click to reset default.
Play position cannot be set directly (right now), but there are 2 controllers for jumping around in the soundfile.
TIP: You can click waveform selection to cause a position change, then set back to full. Not a good solution. Will fix this, but animation of the play position seems harder than expected.
Grains box:

Grain rate and grain length. Grains can be 1 ms up to 10 seconds.
New grains start at a rate of 1/60 secs up to 2000 per second.
Grain frequency. Semitones offset from original sound. Use Shift key to fine-tune. Keys 0-9 jump to exact values, but off by 1. (TODO...)
MIDI notes offset frequency. MIDI C4 (key 60) is zero offset.
Grain glissando. Each grain can rise/drop in pitch. This gives that classic grainy sound (which may be a little tiring, or just your thing).
Small gliss offsets make time-stretched sounds less metallic,
TIP: Set gliss to zero and use a random control with small amount.
Grain attack/decay. Left controller for attack, right for decay (but I usually don't find much use for controllers here).
TIP: If you use large grain gliss, changing attack and decay affects the sound more.
Density: The number of grains playing together, i.e. grain length × grain rate.
High density leads to very high amplitude (clipping), and may overload the CPU. This leads to chopping sound and general misery, so you gotta watch the density.

Granny does internal density compensation for amplitude and delay line. This seems to work ok, but may depend on the soundfile. Display and controls for this will be added.
TIP: Use Internal param grain density ("g.dns") as a controller.
Currently max 1000 grains at the same time, usually not recommended. Better to have shorter grains when grain rate is high.


Each main parameter (big round knob, or pair of knobs) has 2 boxes where you can select controllers to influence the param value:

Random: Y up-down prefer near/extreme offsets from param.
X left-right: Left for new value each grain, or right to "drunk walk", ie continue from previous value.
Sound Amp and Noisiness: Y: mix amp/noise; X: time offset max +/-3 seconds.
LFO: Shaped sine-square-pulse-saw, X-Y moves between shapes.
Extra slider for frequency 0-100 cycles per sec. (hold shift to fine-tune).
ADSR: X mixes between the two ADSRConfused. Works when MIDI notes are played.
MIDI values: Note, velocity, Pitchbend, Mod wheel. X-Y mixes between 2 or all four. Always valid/latest value heard.
Granny Internal: Use value from one param to control another.
TIP: Sound playback position, "s.pos" follows soundfile playback.
TIP: Grain density, "g.dns" with amp or anything to balance for density. Controllers are limited though, so it maxes out and stops changing at some point. (NOTE: THIS controller is allowed to go much wider now. Still stops increasing at density 60-something.).
For effects with 2-3 knobs, the left controller affects the top/left knob, the right controller goes on the bottom/right.


Patches are stored in the large grid of anonymous square slots.
They are numbered 0-125 (this may change):

TIP: Drop granny.json on the Patch drop button first time you use it in a DAW.
Use the patch drop button to save and load new patch files. (click button to save, drag a granny.json patch file to load it).
Top-left slot #0 (blue) is the default patch. Cannot be changed.
Shift-click to restore default ADSR, change-time etc.
Patch #1 (next beside default) is always stored when GUI is closed, and restored when Granny is opened.
Shift-click to store current values to a patch slot.
Ctrl+Shift-click to store knob value. (Different from "current value" during change time after edits.).
Click to use a patch.
Double-click to use immediately (skip change time).
Right-click for options copy/paste/clear to manage patches.
granny.json patch files are human-readable with fairly simple format (if you're not afraid of brackets). TODO: Allow adding patches when loading instead of overwriting all.
TIP: If you hand-edit, there are many online JSON validators to check the syntax.

Effects are applied per grain, in order:

Fold/Boost and bitcrush (smoothed to less-aliasing).
Filter: Dual SVF filter in single control box. The left controller affects filter frequency and Q of both filters, the right affects the low-mid-high mix.
TIP: Store different filter settings in patches, use long Change time to sweep.
Delay. Each grain reads from delay line and copies itself once into delay future.
Delay is more dense the more grains there are. TIP: Sound Amp/Noise controller.
Effects have several param knobs, but still only 2 controllers. each The left controller is applied to the top/left effect param, the right one to the other.

Filter: Left controller for both freq/Q dots, the right one controls low/mid/high mix.


.zip (Size: 1.29 MB / Downloads: 21)
.zip (Size: 783.73 KB / Downloads: 3)
Don't forget to write or click a thank you, because it takes a lot of work to search the files.
Free 50 GB Cloud
Pass if needed: bam4LoFo

Forum Jump:

Users browsing this thread: 1 Guest(s)

This forum uses Lukasz Tkacz MyBB addons.