dplug ~master (2019-01-11T00:34:52Z)

- AbsSmootherstruct AbsSmoother(T)
Non-linear smoother using absolute difference. Designed to have a nice phase response. Warning: samplerate-dependent.

- AttackReleaseSmootherstruct AttackReleaseSmoother(T)
Same as ExpSmoother but have different attack and release decay factors.

- ExpSmootherstruct ExpSmoother(T)
Smooth values exponentially with a 1-pole lowpass. This is usually sufficient for most parameter smoothing.

- LinearSmootherstruct LinearSmoother(T)
Smooth values over time with a linear slope. This can be useful for some smoothing needs. Intermediate between fast phase and actual smoothing.

- MeanFilterstruct MeanFilter(T)
Simple FIR to smooth things cheaply. Introduces (samples - 1) / 2 latency. Converts everything to long for stability purpose. So this may run forever as long as the input is below some threshold.

- MedianFilterstruct MedianFilter(T)
Can be very useful when filtering values with outliers. For what it's meant to do, excellent phase response.

- UnstableMeanFilterstruct UnstableMeanFilter(T)
Simple FIR to smooth things cheaply. Introduces (samples - 1) / 2 latency. This one doesn't convert to integers internally so it may loose precision over time. Meants for finite signals.

Various DSP smoothers.