|
DSPark 1.6.1
Header-only audio DSP framework in pure C++20 — zero dependencies
|
Gardner-style non-uniform partitioned convolver (zero latency, flat CPU). More...
#include <ZeroLatencyConvolver.h>
Public Member Functions | |
| void | prepare (const T *irData, int irLength, int headSize=128) |
| Prepares the convolver with an impulse response (allocates). | |
| void | reset () noexcept |
| Clears all signal state (keeps the IR). Safe on the audio thread. | |
| void | process (const T *input, T *output, int numSamples) noexcept |
| Convolves out-of-place. Works with any numSamples, even 1. | |
| void | processInPlace (T *data, int numSamples) noexcept |
| Convolves in-place. | |
| void | processBlock (AudioBufferView< T > buffer) noexcept |
| Processes channel 0 of a buffer in-place (unified API). Mono engine – use one instance per channel for multichannel. | |
| int | getHeadSize () const noexcept |
| Resolved direct-head length in samples. | |
| int | getNumTailPartitions () const noexcept |
| Number of FFT partitions in the time-distributed tail. | |
Static Public Member Functions | |
| static constexpr int | getLatency () noexcept |
| Zero – that is the point. | |
Gardner-style non-uniform partitioned convolver (zero latency, flat CPU).
| T | Sample type (float or double). |
Definition at line 67 of file ZeroLatencyConvolver.h.
|
inlinenoexcept |
Resolved direct-head length in samples.
Definition at line 239 of file ZeroLatencyConvolver.h.
|
inlinestaticconstexprnoexcept |
Zero – that is the point.
Definition at line 236 of file ZeroLatencyConvolver.h.
|
inlinenoexcept |
Number of FFT partitions in the time-distributed tail.
Definition at line 242 of file ZeroLatencyConvolver.h.
|
inline |
Prepares the convolver with an impulse response (allocates).
| irData | Impulse response samples. |
| irLength | Number of IR samples (any length >= 1). |
| headSize | Direct-convolution head length, rounded to a power of two in [32, 512] (default 128). Larger heads cost more per sample; smaller heads grow the uniform mid level. |
Definition at line 79 of file ZeroLatencyConvolver.h.
|
inlinenoexcept |
Convolves out-of-place. Works with any numSamples, even 1.
| input | Input samples. |
| output | Output samples (may alias input). |
| numSamples | Number of samples. |
Definition at line 165 of file ZeroLatencyConvolver.h.
|
inlinenoexcept |
Processes channel 0 of a buffer in-place (unified API). Mono engine – use one instance per channel for multichannel.
Definition at line 229 of file ZeroLatencyConvolver.h.
|
inlinenoexcept |
Convolves in-place.
Definition at line 220 of file ZeroLatencyConvolver.h.
|
inlinenoexcept |
Clears all signal state (keeps the IR). Safe on the audio thread.
Definition at line 145 of file ZeroLatencyConvolver.h.