DSPark 1.8.0
Header-only C++20 DSP for real-time and offline audio
Loading...
Searching...
No Matches
dspark::AlgorithmicReverb< T >::SmoothRandomLFO Struct Reference

Hermite-interpolated random noise generator for organic modulation. More...

#include <AlgorithmicReverb.h>

Public Member Functions

void prepare (double sr, T rate, uint32_t seed) noexcept
 
void setRate (T rate, double sr) noexcept
 
T nextStride (int stride) noexcept
 

Public Attributes

T h0_ = T(0)
 
T h1_ = T(0)
 
T h2_ = T(0)
 
T h3_ = T(0)
 
T phase_ = T(0)
 
T phaseInc_ = T(0)
 
uint32_t state_ = 1
 

Detailed Description

template<FloatType T>
struct dspark::AlgorithmicReverb< T >::SmoothRandomLFO

Hermite-interpolated random noise generator for organic modulation.

Band-limited random values via cubic Hermite (Catmull-Rom) interpolation between xorshift32 random targets: smooth, non-periodic modulation.

Definition at line 1064 of file AlgorithmicReverb.h.

Member Function Documentation

◆ nextStride()

template<FloatType T>
T dspark::AlgorithmicReverb< T >::SmoothRandomLFO::nextStride ( int  stride)
inlinenoexcept

Advances by stride samples (rates stay far below sr / stride, so at most one new target is drawn per call).

Definition at line 1084 of file AlgorithmicReverb.h.

◆ prepare()

template<FloatType T>
void dspark::AlgorithmicReverb< T >::SmoothRandomLFO::prepare ( double  sr,
T  rate,
uint32_t  seed 
)
inlinenoexcept

Definition at line 1071 of file AlgorithmicReverb.h.

◆ setRate()

template<FloatType T>
void dspark::AlgorithmicReverb< T >::SmoothRandomLFO::setRate ( T  rate,
double  sr 
)
inlinenoexcept

Definition at line 1080 of file AlgorithmicReverb.h.

Member Data Documentation

◆ h0_

template<FloatType T>
T dspark::AlgorithmicReverb< T >::SmoothRandomLFO::h0_ = T(0)

Definition at line 1066 of file AlgorithmicReverb.h.

◆ h1_

template<FloatType T>
T dspark::AlgorithmicReverb< T >::SmoothRandomLFO::h1_ = T(0)

Definition at line 1066 of file AlgorithmicReverb.h.

◆ h2_

template<FloatType T>
T dspark::AlgorithmicReverb< T >::SmoothRandomLFO::h2_ = T(0)

Definition at line 1066 of file AlgorithmicReverb.h.

◆ h3_

template<FloatType T>
T dspark::AlgorithmicReverb< T >::SmoothRandomLFO::h3_ = T(0)

Definition at line 1066 of file AlgorithmicReverb.h.

◆ phase_

template<FloatType T>
T dspark::AlgorithmicReverb< T >::SmoothRandomLFO::phase_ = T(0)

Definition at line 1067 of file AlgorithmicReverb.h.

◆ phaseInc_

template<FloatType T>
T dspark::AlgorithmicReverb< T >::SmoothRandomLFO::phaseInc_ = T(0)

Definition at line 1068 of file AlgorithmicReverb.h.

◆ state_

template<FloatType T>
uint32_t dspark::AlgorithmicReverb< T >::SmoothRandomLFO::state_ = 1

Definition at line 1069 of file AlgorithmicReverb.h.


The documentation for this struct was generated from the following file: