Skip to content

️🛠 - Add basic reverb implementation #60

Description

@maxwellmattryan

Description

Implement an algorithmic reverb using the classic Freeverb architecture (Schroeder/Moorer style). This consists of:

  • Parallel comb filters (typically 8) for initial echo density
  • Series allpass filters (typically 4) for diffusion
  • Wet/dry mix control
  • Room size / decay time control
  • Damping (high-frequency absorption)

Freeverb is well-documented, CPU-efficient, and produces a recognizable "digital reverb" character suitable for many applications.

Open questions

  • Should stereo width be controllable?
  • Pre-delay parameter? (Time before reverb onset)
  • Should the reverb support modulation for a more "lush" sound?
  • What's an acceptable CPU budget relative to other blocks?

Acceptance criteria

  • Dry signal is unaffected when mix is set to 0%
  • Reverb tail decays naturally without metallic ringing or obvious periodicity
  • Room size parameter affects perceived space (small room to large hall)
  • Damping reduces high-frequency content in the reverb tail
  • Reverb does not add significant DC offset or noise floor
  • CPU usage is reasonable for real-time use (benchmark against other blocks)

Tasks

TBD

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels
    No fields configured for Feature.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions