MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ ModulationType

Defines how logic values modulate buffer content.

These are readymade strategies for applying binary logic (0.0/1.0) to continuous audio data, providing common compositional primitives for logic-based signal processing.

Enumerator
REPLACE 

Replace buffer with logic values: out = logic.

MULTIPLY 

Gate/mask buffer: out = logic * buffer (standard audio gate)

ADD 

Offset buffer: out = logic + buffer.

INVERT_ON_TRUE 

Invert signal when logic is true: out = logic ? -buffer : buffer.

HOLD_ON_FALSE 

Hold last value when logic is false: out = logic ? buffer : last_value.

ZERO_ON_FALSE 

Silence when logic is false: out = logic ? buffer : 0.0.

CROSSFADE 

Smooth interpolation: out = lerp(0.0, buffer, logic)

THRESHOLD_REMAP 

Binary value selection: out = logic ? high_val : low_val.

SAMPLE_AND_HOLD 

Sample on logic change: out = logic_changed ? buffer : held_value.

CUSTOM 

User-defined modulation function.

Definition at line 42 of file LogicProcessor.hpp.

42 : uint8_t {
43 REPLACE, ///< Replace buffer with logic values: out = logic
44 MULTIPLY, ///< Gate/mask buffer: out = logic * buffer (standard audio gate)
45 ADD, ///< Offset buffer: out = logic + buffer
46
47 INVERT_ON_TRUE, ///< Invert signal when logic is true: out = logic ? -buffer : buffer
48 HOLD_ON_FALSE, ///< Hold last value when logic is false: out = logic ? buffer : last_value
49 ZERO_ON_FALSE, ///< Silence when logic is false: out = logic ? buffer : 0.0
50 CROSSFADE, ///< Smooth interpolation: out = lerp(0.0, buffer, logic)
51 THRESHOLD_REMAP, ///< Binary value selection: out = logic ? high_val : low_val
52 SAMPLE_AND_HOLD, ///< Sample on logic change: out = logic_changed ? buffer : held_value
53
54 CUSTOM ///< User-defined modulation function
55 };
@ MULTIPLY
Gate/mask buffer: out = logic * buffer (standard audio gate)
@ SAMPLE_AND_HOLD
Sample on logic change: out = logic_changed ? buffer : held_value.
@ REPLACE
Replace buffer with logic values: out = logic.
@ CUSTOM
User-defined modulation function.
@ ZERO_ON_FALSE
Silence when logic is false: out = logic ? buffer : 0.0.
@ INVERT_ON_TRUE
Invert signal when logic is true: out = logic ? -buffer : buffer.
@ ADD
Offset buffer: out = logic + buffer.
@ CROSSFADE
Smooth interpolation: out = lerp(0.0, buffer, logic)
@ HOLD_ON_FALSE
Hold last value when logic is false: out = logic ? buffer : last_value.
@ THRESHOLD_REMAP
Binary value selection: out = logic ? high_val : low_val.