71 virtual void process(
int num_samples)
override;
An IIR-based half-band decimator for downsampling audio by a factor of 2.
Definition iir_halfband_decimator.h:17
force_inline void setSharpCutoff(bool sharp_cutoff)
Enables or disables the sharper 25-tap cutoff mode.
Definition iir_halfband_decimator.h:83
static constexpr int kNumTaps9
Number of taps in the lighter (9-tap) filter mode.
Definition iir_halfband_decimator.h:22
virtual void process(int num_samples) override
Processes audio data by decimating it (halving the sample rate).
Definition iir_halfband_decimator.cpp:44
static poly_float kTaps25[kNumTaps25]
Coefficients for the 25-tap IIR half-band filter, stored as pairs of poly_float.
Definition iir_halfband_decimator.h:37
static poly_float kTaps9[kNumTaps9]
Coefficients for the 9-tap IIR half-band filter, stored as pairs of poly_float.
Definition iir_halfband_decimator.h:32
static constexpr int kNumTaps25
Number of taps in the sharper (25-tap) filter mode.
Definition iir_halfband_decimator.h:27
virtual ~IirHalfbandDecimator()
Virtual destructor.
Definition iir_halfband_decimator.h:56
IirHalfbandDecimator()
Constructs an IirHalfbandDecimator and initializes its memory.
Definition iir_halfband_decimator.cpp:32
@ kNumInputs
Total number of inputs for this processor.
Definition iir_halfband_decimator.h:45
@ kAudio
Main audio input for decimation.
Definition iir_halfband_decimator.h:44
virtual Processor * clone() const override
Cloning is not supported for this processor.
Definition iir_halfband_decimator.h:62
void reset(poly_mask reset_mask) override
Resets the filter states (delay lines) for the specified voices.
Definition iir_halfband_decimator.cpp:92
Base class for all signal-processing units in Vital.
Definition processor.h:212
#define VITAL_ASSERT(x)
Definition common.h:11
#define force_inline
Definition common.h:23
Contains classes and functions used within the Vital synthesizer framework.
Declares the Processor class and related structures for handling audio processing in a polyphonic con...
Represents a vector of floating-point values using SIMD instructions.
Definition poly_values.h:600
Represents a vector of integer values using SIMD instructions.
Definition poly_values.h:56