1

As part of my thesis,I want to write in Delphi the algorithm to calculate the reverberation time using interrupted noise method. Delphi, Signal processing and accoustics are new topics for me. Room is excited with a sound and the response is recorded as a wav file using the microphone of my mobile. Sampling rate of my wav file is 48000.I followed the below steps to get the energy decay curve:

  1. Filetered the spectrum of signal to 1 octave band and got x(t). 2.To get the energy decay curve, used this equation E(t) = 20 log10(x(t)/Max(x(t))).

Could someone comment if this approach is correct?

Neethu
  • 53
  • 3
  • 1
    Yes, this ist basically it. Your RT60 is the amount of time passed since the end of the signal till the last band has decreased 60dB below the excitement level (in this band). – Max Dec 23 '21 at 20:27

1 Answers1

1

This is unlikely to work well. Reverb time measurements are quite sensitive to dynamic range and noise floor.

A far better method is reverse integration of the impulse response. See https://www.ee.columbia.edu/~dpwe/papers/Schro65-reverb.pdf for Manfred Schroeder's original paper on how this works.

You need to make sure you have good signal to noise ratio, which is hard in normal rooms. Measuring the room impulse response with a log sweep or pseudo-random noise can greatly reduce noise through averaging and/or time gating. The reverse integration results in much smoother decay curve than any individual decay measurement.

E(t) = 20 log10(x(t)/Max(x(t))).

Don't normalize to $\max(x(t))$ That's typically dominated by the direct sound and/or early reflection and will tilt the decay curve. It's best to find a straight part in the decay curve that's sufficiently away from the direct sound and the noise floor.

using the microphone of my mobile.

Cell phone mics are NOT great for any serious measurement. At they very least you have to make sure that any type of OS based microphone preprocessing (like automatic gain control, beam forming, etc.) is disabled.

As part of my thesis

I don't know what your thesis is about, but it would be good to start with the requirements. How good and robust does this need to be to support your research goals and amount of error can you tolerate?

Hilmar
  • 44,604
  • 1
  • 32
  • 63