class RemiAudio::DSP::ZitaReverbSimple
Overview
Implements a Hall-like reverb effect.
This is a port of Zita-Rev1, a mostly-a-hall-partially-a-plate reverb based on a feedback delay network and allpass comb filters.
The original Zita-Rev1 supports an "ambisonic" mode, which allows for two inputs and four outputs. This implementation does not support the calculations for ambisonic mode, however, so it's strictly a reverb with stereo output.
This particular variation is simplified to save on CPU time.
Defined in:
remiaudio/dsp/reverbs/zitasimple.crConstructors
Macro Summary
Instance Method Summary
- #crossover : Float64
- #crossover=(value : Float64)
- #damping : Float64
- #damping=(value : Float64)
- #eq(number : Int) : Tuple(Float64, Float64)
- #mute
- #predelay : Float64
- #predelay=(value : Float64)
- #process(inputLeft : Array(Float64) | Slice(Float64), inputRight : Array(Float64) | Slice(Float64), outputLeft : Array(Float64) | Slice(Float64), outputRight : Array(Float64) | Slice(Float64)) : Nil
- #process(inputLeft : Array(Float32) | Slice(Float32), inputRight : Array(Float32) | Slice(Float32), outputLeft : Array(Float32) | Slice(Float32), outputRight : Array(Float32) | Slice(Float32)) : Nil
- #process(input : Array(Float32) | Slice(Float32), output : Array(Float32) | Slice(Float32)) : Nil
- #process(buffer : Array(Float32) | Slice(Float32), amount : Float32 | Float64 = 1.0) : Nil
- #setEq(number : Int, frequency : Float64, gain : Float64)
- #timeHigh : Float64
- #timeHigh=(value : Float64)
- #timeLow : Float64
- #timeLow=(value : Float64)
- #updateInternalParams(*, numFrames : Int32 = 0)
Instance methods inherited from class RemiAudio::DSP::ZitaReverb
crossover : Float64
crossover,
crossover=(value : Float64)
crossover=,
damping : Float64
damping,
damping=(value : Float64)
damping=,
eq(number : Int) : Tuple(Float64, Float64)
eq,
mute : Nil
mute,
predelay : Float64
predelay,
predelay=(value : Float64)
predelay=,
process(inputLeft : Array(Float64) | Slice(Float64), inputRight : Array(Float64) | Slice(Float64), outputLeft : Array(Float64) | Slice(Float64), outputRight : Array(Float64) | Slice(Float64)) : Nilprocess(inputLeft : Array(Float32) | Slice(Float32), inputRight : Array(Float32) | Slice(Float32), outputLeft : Array(Float32) | Slice(Float32), outputRight : Array(Float32) | Slice(Float32)) : Nil
process(input : Array(Float64) | Slice(Float64), output : Array(Float64) | Slice(Float64)) : Nil
process(input : Array(Float32) | Slice(Float32), output : Array(Float32) | Slice(Float32)) : Nil
process(buffer : Array(Float64) | Slice(Float64), amount : Float64 | Float64 = 1.0) : Nil
process(buffer : Array(Float32) | Slice(Float32), amount : Float32 | Float64 = 1.0) : Nil process, setEq(number : Int, frequency : Float64, gain : Float64) setEq, timeHigh : Float64 timeHigh, timeHigh=(value : Float64) timeHigh=, timeLow : Float64 timeLow, timeLow=(value : Float64) timeLow=, updateInternalParams(*, numFrames : Int32 = 0) updateInternalParams, usePreset(preset : Reverb::Preset) : Nil usePreset
Constructor methods inherited from class RemiAudio::DSP::ZitaReverb
new(newSampleRate : Int32, numFrames : Int32)
new
Class methods inherited from class RemiAudio::DSP::ZitaReverb
checkCrossover(value) : Nil
checkCrossover,
checkDamping(value) : Nil
checkDamping,
checkEQ1Freq(value) : Nil
checkEQ1Freq,
checkEQ1Gain(value) : Nil
checkEQ1Gain,
checkEQ2Freq(value) : Nil
checkEQ2Freq,
checkEQ2Gain(value) : Nil
checkEQ2Gain,
checkPredelay(value) : Nil
checkPredelay,
checkTimeHigh(value) : Nil
checkTimeHigh,
checkTimeLow(value) : Nil
checkTimeLow
Macros inherited from class RemiAudio::DSP::ZitaReverb
processZ(z, x0, x1)
processZ
Instance methods inherited from class RemiAudio::DSP::Reverb
mute : Nil
mute,
process(inputLeft : Array(Float64) | Slice(Float64), inputRight : Array(Float64) | Slice(Float64), outputLeft : Array(Float64) | Slice(Float64), outputRight : Array(Float64) | Slice(Float64)) : Nil
process,
usePreset(preset : Reverb::Preset) : Nil
usePreset
Constructor Detail
Macro Detail
Instance Method Detail
def process(inputLeft : Array(Float64) | Slice(Float64), inputRight : Array(Float64) | Slice(Float64), outputLeft : Array(Float64) | Slice(Float64), outputRight : Array(Float64) | Slice(Float64)) : Nil
#
def process(inputLeft : Array(Float32) | Slice(Float32), inputRight : Array(Float32) | Slice(Float32), outputLeft : Array(Float32) | Slice(Float32), outputRight : Array(Float32) | Slice(Float32)) : Nil
#
def process(input : Array(Float32) | Slice(Float32), output : Array(Float32) | Slice(Float32)) : Nil
#