29enum class DryWetMixingRule
50template <
typename SampleType>
55 using MixingRule = DryWetMixingRule;
62 explicit DryWetMixer (
int maximumWetLatencyInSamples);
111 SampleType mix = 1.0;
112 MixingRule currentMixingRule = MixingRule::linear;
113 double sampleRate = 44100.0;
114 int maximumWetLatencyInSamples = 0;
A multi-channel buffer containing floating point audio samples.
Encapsulates the logic for a single-threaded FIFO.
A utility class for values that need smoothing to avoid audio glitches.
Minimal and lightweight data-structure which contains a list of pointers to channels containing some ...
A delay line processor featuring several algorithms for the fractional delay calculation,...
A processor to handle dry/wet mixing of two audio signals, where the wet signal may have additional l...
void pushDrySamples(const AudioBlock< const SampleType > drySamples)
Copies the dry path samples into an internal delay line.
void setWetMixProportion(SampleType newWetMixProportion)
Sets the current dry/wet mix proportion, with 0.0 being full dry and 1.0 being fully wet.
void reset()
Resets the internal state variables of the processor.
void setMixingRule(MixingRule newRule)
Sets the mix rule.
void setWetLatency(SampleType wetLatencyInSamples)
Sets the relative latency of the wet signal path compared to the dry signal path, and thus the amount...
void prepare(const ProcessSpec &spec)
Initialises the processor.
void mixWetSamples(AudioBlock< SampleType > wetSamples)
Mixes the supplied wet samples with the latency-compensated dry samples from pushDrySamples.
DryWetMixer()
Default constructor.
Type unalignedPointerCast(void *ptr) noexcept
Casts a pointer to another type via void*, which suppresses the cast-align warning which sometimes ar...
This structure is passed into a DSP algorithm's prepare() method, and contains information about vari...