Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 3 of 3

Thread: How to add a "freeze" function to Reverb effect?

  1. #1
    Junior Member
    Join Date
    Dec 2017
    Location
    NYC
    Posts
    3

    How to add a "freeze" function to Reverb effect?

    Hi folks,
    I want to add a "freeze" function to the Reverb effect. If you're familiar with the Clouds eurorack module, that's kind of the effect i'm after. Here's a demo of it:
    https://www.youtube.com/watch?v=IjcDnax9yLYt=6m18s

    I understand the most basic idea of the Reverb effect, but I don't know where to start to implement a feature like this.

    I think a simplistic version would go something like this…
    If freeze == true, then stop all incoming audio into the reverb effect and replay the same reverb buffer until freeze == false.

    Thoughts?
    Thanks!

  2. #2
    Senior Member Blackaddr's Avatar
    Join Date
    Mar 2017
    Location
    Canada
    Posts
    171
    Yeah, that sounds about right to me. The details that may come into play might include avoiding the sharp transition when the audio buffer wraps around. When you loop a sample, the point at which it jumps back to the beginning often results in a loud pop due to the instantaneous jump from one level to another.

    Keep in mind that properly sampled audio results in slow, smooth transitions in level from one sample to the next. You violate this when you jump to back to the start, so you will likely need some blending here.

    As a crude illustration, say the sample levels go like:

    ... 10 10 11 12 13 <wrap to beginning of buffer> 100 98 97 96 95 ...

    That jump from 13 to 100 will cause a loud pop. You need to do some processing to smooth that transition.

  3. #3
    Junior Member
    Join Date
    Nov 2016
    Location
    Brazil
    Posts
    1
    Hi,

    I'm the author of the teensy reverb.
    Looping shouldn't be necessary, the resonating APF and Comb LPF structure are able to maintain infinite decay time.
    You can think of them as an "untunned" oscilator.

    In case you're curious, this reverb is built after a structure named Schroeder Reverberator, check here for more theory => https://ccrma.stanford.edu/~jos/pasp...rberators.html

    I'll look into improving the algorithm, I've had complains about the large memory footprint as well, time to look into that too!

    I'm really glad the reverb is being put to good use! Please don't hesitate mailing suggestions and observations!

    Cheers!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •