Tabula Sonora 0.1.0
A native C++20 implementation of the Roland Sound Canvas VA synth voice
Loading...
Searching...
No Matches
ts::DcBlocker Class Reference

The engine's DC blocker: one design, instantiated once on each effect input. More...

#include <tabulasonora/send_effects.hpp>

Public Member Functions

void reset () noexcept
double process (double input) noexcept

Static Public Attributes

static constexpr double input_coefficient = 0.99804
static constexpr double state_coefficient = -0.003919

Detailed Description

The engine's DC blocker: one design, instantiated once on each effect input.

A 20 Hz one-pole highpass. The coefficient 0.99804 is the only float literal between 0.85 and 1.0 anywhere in the binary, which is how it was established that no second design exists. It is needed because the sample codec's predictor is a pure integrator that drifts on every loop pass.

Member Function Documentation

◆ reset()

void ts::DcBlocker::reset ( )
inlinenoexcept

◆ process()

double ts::DcBlocker::process ( double input)
inlinenodiscardnoexcept

Member Data Documentation

◆ input_coefficient

double ts::DcBlocker::input_coefficient = 0.99804
staticconstexpr

◆ state_coefficient

double ts::DcBlocker::state_coefficient = -0.003919
staticconstexpr

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