A per-shape lumped memoryless nonlinearity — the "analog character" the output stage imprints. More...
#include <vco.hpp>
Public Attributes | |
| double | amount = 0.0 |
| Blend from clean (0) to fully shaped (1). Exactly 0 is a bit-exact bypass. | |
| double | drive = 1.0 |
| Pre-gain into the saturator. Higher drive = harder curve = more harmonics. | |
| double | asymmetry = 0.0 |
| Even-harmonic bias. | |
A per-shape lumped memoryless nonlinearity — the "analog character" the output stage imprints.
One curve stands in for the whole waveshaper/soft-clip chain of a shape (the identifiability table's "output soft clip vs shaper residual" pair is observationally one nonlinearity per shape at a fixed level, so this increment fits one lumped curve, not the split).
Neutral by default (amount == 0 → identity, applied as an exact bypass).
| double pulp::signal::osc::WaveshaperParams::amount = 0.0 |
Blend from clean (0) to fully shaped (1). Exactly 0 is a bit-exact bypass.
| double pulp::signal::osc::WaveshaperParams::asymmetry = 0.0 |
Even-harmonic bias.
0 is symmetric (odd harmonics only); non-zero pulls the curve off-center and introduces even harmonics.
| double pulp::signal::osc::WaveshaperParams::drive = 1.0 |
Pre-gain into the saturator. Higher drive = harder curve = more harmonics.