I am recently try to figure out the time selective response algorithm of soundcheck. I found:

  1. It uses a logarithmic sweep sine as a stimulus, x(t) for example, with unit of Volt.
  2. The excitation signal is sent to the sound card to achieve D / A conversion, and then sent to the speaker through the power amplifier. While the speaker plays the sound, the microphone collects the sound to obtain the signal y (t), the unit is Pa. Assuming the sensitivity of the microphone is s0 V/Pa, we can convert the unit of y(t) to Volt( same as x(t)), for example y1(t)=y(t)[Pa]*s0[V/Pa].
  3. According to Farina's paper "Advancements in impulse response measurements by sine sweeps", firstly I calculate the inverse filter f(t)=Am*fliplr(x(t)), where Am is an amplitude modulation. Then I perform the deconvolution:

    deconv=conv(y(t),f(t)), it should be unit-less.

  4. However the de-convolved response in soundcheck has a unit of Pa/s, and is much smaller than the results I calculated, even though they have exactly the same shape.

Here below are some pictures: enter image description here

can anybody give me some tips, thanks!

  • Not having used soundcheck before, but having had quite a bit of experience with inverse convolution, I would say initially that the result could be due to the gain structure of the sensing microphone. Everything else looks as per expectations.
    – Mark
    Mar 6 '20 at 11:16
  • The thing that I do observe, which gives me cause for concern, is the considerable pre-ring in the resulting impulse response which should not be there. I suspect this is something to do with your filtering. I have not read Angelo's paper yet, so will do so, but I am unsure as to why there is a need to associate Amplitude Modulation with the filter and why you can't just proceed straight to a deconvolution. Will read the paper and hopefully will have a better understanding of what he is trying to do there.
    – Mark
    Mar 6 '20 at 23:29

@Mark, thanks for your suggestion. while the amplitude modulation is used to correct the spectrum of stimulus signal. In fact, a pure exponential sweep sine signal without amplitude modulation doesn't have a white (flat) spectrum: due to the fact that the instantaneous frequency sweeps slowly at low frequencies, and much faster at high frequencies, the resulting spectrum is pink (falling down by -3 dB/octave in a Fourier spectrum). So, the inverse filter must compensate for this: a proper amplitude modulation is consequently applied to the reversed sweep signal, so that its amplitude is now increasing by +3 dB/octave. please refer to Farina's paper.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.