Sound Byte Libs 0.5.1-121-g3358a44
C++ firmware library for audio applications on 32-bit ARM Cortex-M processors
Loading...
Searching...
No Matches
sbl::dsp::comp Namespace Reference

Compositions: subcircuits of primitives. More...

Detailed Description

Compositions: subcircuits of primitives.

Classes

class  AnalogDrift
 
class  BitCrusher
 
class  EnvelopeFollower
 
class  Fader
 
class  Lfo
 
class  Pan
 
class  WarmSaturator
 
class  WavefoldAA
 

Enumerations

enum class  Taper : uint8_t { Linear , Audio , Exponential }
 

Functions

float wavefold_antideriv (float x)
 
float wavefold_antideriv2 (float x)
 

Enumeration Type Documentation

◆ Taper

enum class sbl::dsp::comp::Taper : uint8_t
strong
Enumerator
Linear 
Audio 
Exponential 

Definition at line 34 of file fader.hpp.

Function Documentation

◆ wavefold_antideriv()

float sbl::dsp::comp::wavefold_antideriv ( float  x)
inline

First antiderivative of the wavefold triangle-wave function (F1).

The fold function f(x) on its fundamental period [-1, 3): [-1, 1): f(x) = x (slope +1) [ 1, 3): f(x) = 2 - x (slope -1)

F1(x), continuous and periodic (period 4): [-1, 1): F1(x) = x²/2 + 1 [ 1, 3): F1(x) = 2x - x²/2

Definition at line 43 of file wavefold_aa.hpp.

Referenced by sbl::dsp::comp::WavefoldAA::process(), and sbl::dsp::comp::WavefoldAA::reset().

◆ wavefold_antideriv2()

float sbl::dsp::comp::wavefold_antideriv2 ( float  x)
inline

Second antiderivative of the wavefold triangle-wave function (F2).

F2(x) = integral of F1(x) from 0 to x. On the fundamental period [-1, 3): [-1, 1): F2(x) = x³/6 + x [ 1, 3): F2(x) = x² - x³/6 + 1/3

F1 has nonzero mean (3/2) over one period, so F2 grows by 6 per period. For arbitrary x: F2(x) = F2_core(x_reduced) + 6 * periods.

Definition at line 65 of file wavefold_aa.hpp.

Referenced by sbl::dsp::comp::WavefoldAA::process(), and sbl::dsp::comp::WavefoldAA::reset().