Allolib  1.0
C++ Components For Interactive Multimedia
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Modules Pages
al::Reverb< T > Class Template Reference

Plate reverberator. More...

#include <C:/Users/Andres/source/repos/casm_viewer/external/tinc/external/allolib/include/al/sound/al_Reverb.hpp>

Classes

class  OnePole
 

Public Member Functions

Reverbbandwidth (T v)
 Set input signal bandwidth, in [0,1]. More...
 
Reverbdamping (T v)
 Set high-frequency damping amount, in [0, 1]. More...
 
Reverbdecay (T v)
 Set decay factor, in [0, 1)
 
Reverbdiffusion (T in1, T in2, T decay1, T decay2)
 Set diffusion amounts, in [0, 1) More...
 
ReverbdiffusionIn1 (T v)
 Set input diffusion 1 amount, [0,1)
 
ReverbdiffusionIn2 (T v)
 Set input diffusion 2 amount, [0,1)
 
ReverbdiffusionDecay1 (T v)
 Set tank decay diffusion 1 amount, [0,1)
 
ReverbdiffusionDecay2 (T v)
 Set tank decay diffusion 2 amount, [0,1)
 
void operator() (T in, T &out1, T &out2, T gain=T(0.6))
 Compute wet stereo output from dry mono input. More...
 
mix (T &inout1, T &out2, T wetAmt)
 Compute wet/dry mix stereo output from dry mono input. More...
 
void zero ()
 

Protected Attributes

mDfIn1
 
mDfIn2
 
mDfDcy1
 
mDfDcy2
 
mDecay
 
StaticDelayLine< 10, T > mPreDelay
 
OnePole mOPIn
 
StaticDelayLine< 142, T > mAPIn1
 
StaticDelayLine< 107, T > mAPIn2
 
StaticDelayLine< 379, T > mAPIn3
 
StaticDelayLine< 277, T > mAPIn4
 
StaticDelayLine< 672, T > mAPDecay11
 
StaticDelayLine< 1800, T > mAPDecay12
 
StaticDelayLine< 4453, T > mDly11
 
StaticDelayLine< 3720, T > mDly12
 
OnePole mOP1
 
StaticDelayLine< 908, T > mAPDecay21
 
StaticDelayLine< 2656, T > mAPDecay22
 
StaticDelayLine< 4217, T > mDly21
 
StaticDelayLine< 3163, T > mDly22
 
OnePole mOP2
 

Detailed Description

template<class T = float>
class al::Reverb< T >

Plate reverberator.

Design from: Dattorro, J. (1997). Effect design: Part 1: Reverberator and other filters. Journal of the Audio Engineering Society, 45(9):660-684. https://ccrma.stanford.edu/~dattorro/EffectDesignPart1.pdf

Definition at line 133 of file al_Reverb.hpp.

Member Function Documentation

◆ bandwidth()

template<class T = float>
Reverb& al::Reverb< T >::bandwidth ( v)
inline

Set input signal bandwidth, in [0,1].

This sets the cutoff frequency of a one-pole low-pass filter on the input signal.

Definition at line 146 of file al_Reverb.hpp.

◆ damping()

template<class T = float>
Reverb& al::Reverb< T >::damping ( v)
inline

Set high-frequency damping amount, in [0, 1].

Higher amounts will dampen the diffusive sound more quickly. Note: values in [-1, 0] create an inverse effect that attentuates low rather than high frequencies.

Definition at line 156 of file al_Reverb.hpp.

◆ diffusion()

template<class T = float>
Reverb& al::Reverb< T >::diffusion ( in1,
in2,
decay1,
decay2 
)
inline

Set diffusion amounts, in [0, 1)

Values near 0.7 are recommended. Moving further away from 0.7 will lead to more distinct echoes.

Definition at line 172 of file al_Reverb.hpp.

◆ mix()

template<class T = float>
T al::Reverb< T >::mix ( T &  inout1,
T &  out2,
wetAmt 
)
inline

Compute wet/dry mix stereo output from dry mono input.

Parameters
[in,out]inout1the input sample and wet/dry output 1
[out]out2wet/dry output 2
[in]wetAmtwet mix amount
Returns
dry input sample

Definition at line 250 of file al_Reverb.hpp.

◆ operator()()

template<class T = float>
void al::Reverb< T >::operator() ( in,
T &  out1,
T &  out2,
gain = T(0.6) 
)
inline

Compute wet stereo output from dry mono input.

Parameters
[in]indry input sample
[out]out1wet output sample 1
[out]out2wet output sample 2
[in]gaingain of output

Definition at line 210 of file al_Reverb.hpp.


The documentation for this class was generated from the following file: