Geiger

pseudo gaussian distributed (white) noise Range -64..64
Author: Smashed Transistors
License: LGPL
Github: tiar/noise/Geiger.axo

Inlets

frac32.bipolar density

Outlets

frac32buffer.bipolar impulses

Parameters

frac32.u.map density

Declaration
uint32_t r;
int32_t y;
int32_t density;
Init
y = 1 << 27;
r = 137 + GenerateRandomNumber();
Control Rate
density = param_density + inlet_density;
density = ___SMMLA(density << 2, density << 3, density >> 4); // x^2 + x/16
density = ___SMMLA(density << 2, density << 3,
                   density >> 2); // (x^2 + x/16)^2 + (x^2 + x/16)/4

density >>= 6; // q31
Audio Rate
// a
r *= 69069UL;
if ((r >> 5) < density)
  y = -y;

outlet_out = y;

Privacy

© 2024 Zrna Research