Effects

class tiliqua.dsp.WaveShaper(*args, src_loc_at=0, **kwargs)

Waveshaper that maps x to f(x), where the function must be stateless so we can precompute a mapping lookup table.

Linear interpolation is used between lut elements.

class tiliqua.dsp.PitchShift(*args, src_loc_at=0, **kwargs)

Granular pitch shifter. Works by crossfading 2 separately tracked taps on a delay line. As a result, maximum grain size is the delay line ‘max_delay’ // 2.

The delay line tap itself must be hooked up to the input source from outside this component (this allows multiple shifters to share a single delay line).

class tiliqua.delay.PingPongDelay(*args, src_loc_at=0, **kwargs)

2-channel stereo ping-pong delay.

Based on 2 equal-length delay lines, fed back into each other.

Delay lines are created external to this component, and may be SRAM-backed or PSRAM-backed depending on the application.

class tiliqua.delay.Diffuser(*args, src_loc_at=0, **kwargs)

4-channel shuffling feedback delay.

Based on 4 separate delay lines with separate delay lengths, where the feedback paths are shuffled into different channels by a matrix mixer.

Delay lines are created external to this component, and may be SRAM-backed or PSRAM-backed depending on the application.