signal/noise
src/signal/noise.tur
defn
rng
(rng [seed :int])
seeded white-noise source.
Parameters
| seed | any int; equal seeds give equal streams |
Returns
A thunk emitting a fresh uniform sample in [-1, 1) per call.
Example
(let [r (rng 42)] (r))
defn
white-from
(white-from [^fat src : (fn [])
white noise from an injected source.
Parameters
| src | `(fn [] #fx{e} float)` emitting raw samples in [-1, 1] |
Returns
An SF with row #fx{e}. Pass `(rng seed)` for a pure, repeatable signal.
defn
pink-from
(pink-from [^fat src : (fn [])
pink (1/f) noise from an injected white source.
defn
brown-from
(brown-from [^fat src : (fn [])
brown (1/f^2, "red") noise from an injected white source.
defn
blue-from
(blue-from [^fat src : (fn [])
blue (+3 dB/oct) noise from an injected white source.
defn
violet-from
(violet-from [^fat src : (fn [])
violet (+6 dB/oct) noise from an injected white source.
defn
white
(white [seed :int])
seeded white noise, uniform in [-1, 1).
Example
((white 1) (constant 0.0))
defn
pink
(pink [seed :int])
seeded pink (1/f) noise.
defn
brown
(brown [seed :int])
seeded brown (1/f^2) noise.
defn
blue
(blue [seed :int])
seeded blue noise.
defn
violet
(violet [seed :int])
seeded violet noise.
Internal definitions
__noise_rng_alloc-- allocate a PRNG state cell holding `seed`.__noise_rng_next-- SplitMix64 step, mapped to a double in [-1, 1).__noise_alloc-- allocate a zeroed filter-state cell.noise-pink-step-- one step of Kellet's refined pink filter, in [-1, 1].__noise_step-- color one white sample `w` according to `kind`.