0
$\begingroup$

I have an audio signal that I am applying an analogue transfer function $H(s)$ to. I would like to approximate the change in gain ($\Delta \text{ Gain}$) as perceived by the listener for an arbitrary audio signal sent through the filter $H(s)$.

I was thinking something along the lines of:

$$ \Delta \text{Gain} = \frac {\displaystyle\int_{0}^{\pi} \lvert H(\omega)\rvert d\omega} {\pi} $$

This is based on an assumption that the formula above gives a sensible approximation of gain across the spectrum by calculating the averaging gain.

Is my thinking sensible or is there some proper theory that will give a better answer that I can refer to?

$\endgroup$
1
$\begingroup$

I would like to approximate the change in gain ($\Delta \text{ Gain}$) as perceived by the listener for an arbitrary audio signal sent through the filter $H(s)$.

That's not possible, since the filter's response and perceived loudness depend on the frequency content of the signal, which is unknown.

In other words, if your filter is a high shelf, which boosts everything above 5 kHz, then:

  • For a signal that contains high frequency content, it will boost the perceived loudness
  • For a low frequency signal that consists only of bass, there will be no change

Since you're ok with an approximation, you can make an educated guess what the change will be based on a typical music spectrum, which is probably the best you can do. This paper contains a model of typical music spectra:

So the steps would be:

  1. Generate the typical music spectrum, either from papers like above, or from measurements
  2. Pass it through a psychoacoustic loudness filter (like 468-weighting or A-weighting)
  3. Measure the RMS level
  4. Pass it through your filter under test
  5. Measure the RMS level

The ratio between 5 and 3 will be the change in perceived loudness.

$\endgroup$
1
$\begingroup$

You want to calculate loudness difference between input and output.

Loudness depends on the power spectral density of a signal; knowing only the transfer function of your filter is not enough for calculating PSD.

For example, suppose your filter is a lowpass filter, with attenuation 20 dB in the stop band. If your input signal is completely contained below the cutoff frequency, then no perceived gain (input and output are similar), whereas if your input signal is all above the cutoff frequency, then you will perceive a -20dB gain.

Related question on calculating loudness.

$\endgroup$
  • $\begingroup$ It's got to be an educated guess based on the assumption that the audio signal is rich in frequency content between 20Hz and 20kHz. An alternative view is that the IFFT could convert the transfer function to the time domain in order to apply time domain methods. $\endgroup$ – keith Jan 9 '18 at 17:14
  • $\begingroup$ @keith Most people don't listen to white noise from 20 Hz to 20 kHz. Your educated guess should include a typical spectrum. Is it music? Speech? $\endgroup$ – endolith May 24 '18 at 22:49
  • $\begingroup$ @endolith, it's music but the spectral content would not be known a priori. $\endgroup$ – keith May 26 '18 at 7:22
  • $\begingroup$ @keith But music has a typical spectrum that's strong at low frequencies and tapers off at high frequencies, so you can estimate with that $\endgroup$ – endolith May 26 '18 at 19:37
  • $\begingroup$ @endolith, I don't see how this is helping. It's fine to assume the input audio is unity gain between 20Hz and 20kHz. The problem as I see it is the psychoacoustic model (equation if you will) used to estimate the perceived change in gain of $H(s)$. $\endgroup$ – keith May 26 '18 at 19:41

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.