There is a measurement called waterfall effect in audio systems.

enter image description here

When you apply a sweep signal starting from 50Hz to 20KHz, it shows how long the resonance of the speaker goes. For example in the image above, SPL level of the signals at frequency domain after 150 ms has past are shown. The goal here is to minimize the waterfall effect. What i see in the data is that the damping model fits in below formula:

enter image description here

each frequency has below damping formula:

$$ A*e^{-c*t^{2}} $$

with different 'c' constant. So in a certain model, I extracted the constants, converting the SPL to Watt.

enter image description here

What I am after is to divide the data in small chunks, do a spectogram analysis, see the magnitude and phase of the signal of interest, and apply a damped signal right after a full period of the interested signals frequency, in reverse phase. I think the waterfall effect will ve cancelled out by this and I will achieve reduction of the waterfall affect, when I apply this algorithm in real time. Right now, I am doing all in preprocesed. After I confirm the way is correct, I will try to implement this method in real time. So long stroy short, I achieved this somehow;

the original data: enter image description here

after processing: enter image description here

The problem is, this method creates some pop noises in the sound.

For better understanding, I will explain the method in more detail. This is the sweep signal:

enter image description here

This is a 125 Hz signal that is found in one of the analized chunks:

enter image description here

This is the fading signal of it after one period:

enter image description here

I subtract this signal from the next period in the chunk. I hope you get the idea better. I do this for all the chunks.

But, this some times leads to some kind of pop noise. And the cause of the problem is below:

enter image description here

I tried applying filters after the process (Like sagvol or butterworth). It smooths the sudden discontinuties and distortions, it helps the noise but doesn't solve it. My question is, how can I overcome this noise in the data? is there a method which I can apply, without sacrificing the improvement I have now? An filter or methods I can use? Thanks.

  • 1
    $\begingroup$ The effect you're seeing looks like phase discontinuities as the signal frequency changes. However, it's not clear to me precisely what you're doing to get the bumps. The problem of phase discontinuities is usually resolved by dealing with phase increments instead of frequency jumps. However, it sounds like you're doing some post-processing that's causing your pop / crackle. $\endgroup$
    – Peter K.
    Commented Jun 18, 2022 at 22:54


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.