|
DSPark 1.8.0
Header-only C++20 DSP for real-time and offline audio
|
Physical audio-transformer coloration (flux-domain JA hysteresis). More...
#include <TransformerModel.h>
Public Member Functions | |
| void | prepare (const AudioSpec &spec) |
| Allocates per-channel circuit state. Invalid specs (non-positive or non-finite rate, block size or channel count) are ignored: the previous state is kept and an unprepared instance stays pass-through. | |
| void | reset () noexcept |
| Clears all signal state. RT-safe. | |
| void | setDrive (T db) noexcept |
| Core drive in dB [-12, +24]; loudness-compensated. Non-finite values are ignored. | |
| void | setCoreSize (T size) noexcept |
| Core size [0, 1]: small chokes at 40 Hz and saturates early, big rings to 5 Hz with more low-end headroom. Default 0.5. Non-finite values are ignored. | |
| void | setResonance (T amount) noexcept |
| Leakage/capacitance HF bell amount [0, 1] (Jensen-style). Non-finite values are ignored. | |
| void | setMix (T mix) noexcept |
| Dry/wet mix [0, 1]; the dry path is delayed to getLatency() and the mix is ramped over at least 20 ms. Non-finite values are ignored. | |
| T | getDrive () const noexcept |
| T | getCoreSize () const noexcept |
| T | getResonance () const noexcept |
| T | getMix () const noexcept |
| void | setOversampling (int factor) |
| Configures internal oversampling of the core. SETUP THREAD ONLY: it reallocates the filters and re-runs the calibration exactly like prepare(); never call it concurrently with processBlock(). | |
| int | getOversamplingFactor () const noexcept |
| Active oversampling factor (1 = off, 2 = default). | |
| int | getLatency () const noexcept |
| Latency in samples: the active oversampler's group delay (0 at 1x). The model itself is minimum-phase IIR and memoryless NR. | |
| int | getLatencySamples () const noexcept |
| Compatibility alias of getLatency(), in prepared-rate samples. | |
| std::vector< uint8_t > | getState () const |
| Serializes the parameter state (setup/UI threads; allocates). | |
| bool | setState (const uint8_t *data, size_t size) |
| Restores parameters from a blob (tolerant; rejects foreign ids). Setup thread: a stored oversampling factor other than the active one re-prepares, as setOversampling() does. Blobs from before the factor was stored restore the default, 2. | |
| void | processBlock (AudioBufferView< T > buffer) noexcept |
| Processes a block in-place. Pass-through until prepare() succeeds. Blocks longer than the prepared maximum are processed in pieces. | |
Physical audio-transformer coloration (flux-domain JA hysteresis).
| T | Sample type (float or double). |
Definition at line 98 of file TransformerModel.h.
|
inlinenoexcept |
Definition at line 214 of file TransformerModel.h.
|
inlinenoexcept |
Definition at line 213 of file TransformerModel.h.
|
inlinenoexcept |
Latency in samples: the active oversampler's group delay (0 at 1x). The model itself is minimum-phase IIR and memoryless NR.
Definition at line 242 of file TransformerModel.h.
|
inlinenoexcept |
Compatibility alias of getLatency(), in prepared-rate samples.
Definition at line 245 of file TransformerModel.h.
|
inlinenoexcept |
Definition at line 216 of file TransformerModel.h.
|
inlinenoexcept |
Active oversampling factor (1 = off, 2 = default).
Definition at line 238 of file TransformerModel.h.
|
inlinenoexcept |
Definition at line 215 of file TransformerModel.h.
|
inline |
Serializes the parameter state (setup/UI threads; allocates).
Definition at line 248 of file TransformerModel.h.
|
inline |
Allocates per-channel circuit state. Invalid specs (non-positive or non-finite rate, block size or channel count) are ignored: the previous state is kept and an unprepared instance stays pass-through.
Definition at line 107 of file TransformerModel.h.
|
inlinenoexcept |
Processes a block in-place. Pass-through until prepare() succeeds. Blocks longer than the prepared maximum are processed in pieces.
Definition at line 281 of file TransformerModel.h.
|
inlinenoexcept |
Clears all signal state. RT-safe.
Definition at line 151 of file TransformerModel.h.
|
inlinenoexcept |
Core size [0, 1]: small chokes at 40 Hz and saturates early, big rings to 5 Hz with more low-end headroom. Default 0.5. Non-finite values are ignored.
Definition at line 188 of file TransformerModel.h.
|
inlinenoexcept |
Core drive in dB [-12, +24]; loudness-compensated. Non-finite values are ignored.
Definition at line 178 of file TransformerModel.h.
|
inlinenoexcept |
Dry/wet mix [0, 1]; the dry path is delayed to getLatency() and the mix is ramped over at least 20 ms. Non-finite values are ignored.
Definition at line 207 of file TransformerModel.h.
|
inline |
Configures internal oversampling of the core. SETUP THREAD ONLY: it reallocates the filters and re-runs the calibration exactly like prepare(); never call it concurrently with processBlock().
| factor | Power of two in {1, 2, 4, 8, 16}. 1 = off (zero latency; the loop's harmonics above the base Nyquist then fold into the band). 2 is the default. Other values are ignored. getLatency() reflects the new factor after this call. |
Definition at line 228 of file TransformerModel.h.
|
inlinenoexcept |
Leakage/capacitance HF bell amount [0, 1] (Jensen-style). Non-finite values are ignored.
Definition at line 197 of file TransformerModel.h.
|
inline |
Restores parameters from a blob (tolerant; rejects foreign ids). Setup thread: a stored oversampling factor other than the active one re-prepares, as setOversampling() does. Blobs from before the factor was stored restore the default, 2.
Definition at line 265 of file TransformerModel.h.