Back to Computing Page

Effective SPL Computation
Programming Note # 6
Ravi Kochhar
Dept. of Physiology
Univ. of Wisconsin - Madison
Aug. 26, 1992
Rev. Level 1.003(5/2/2000)

"Effective Sound Pressure Level (SPL)" is used to describe the relative intensity of a sound that is not a pure tone. In effect, we are asking the question "How loud is this complex sound, and how does it compare with a pure tone at X dB SPL ?". For a pure tone, there is a calibration procedure in place in the lab which is done before each experiment. The calibration procedure does not directly give the "SPL" of complex or more general waveforms (such as Noise, Speech etc.). The procedure described below is used to overcome this shortcoming. It makes use of the standard "tone calibration" results to compute an "Effective SPL" (in dB) of more general waveforms.

Some caution is necessary when using the "Effective SPL" as a way of describing the intensity of a sound. For any general sound (or waveform) that is not a pure tone, the intensity may vary with time. For example, in normal speech, there are periods of silence between phrases. The effective SPL in this case would compute an average intensity. Computing the "Effective SPL" by this method is also not suitable for very short duration waveforms, such as clicks. On the other hand, for a wide band noise that is on continuously, the computed effective SPL comes closer to describing the intensity of the sound. The utility of such a computation is in allowing comparisons of data collected with pure tones with data collected with other sounds. For example, if the threshold of a unit is determined as X dB SPL in response to a pure tone at CF, it is sometimes necessary to compare that with the threshold in response to wide band noise.

There are two places where an effective SPL computation option is available at present. One is in data collection programs (such as RA), where the user has a choice of answering the "Use Effective SPL (Y/N) ?" query with a Y when using general waveforms. This causes the DSS attenuators to be set after computation of the effective SPL. If the user answers this query with an "N", then effective SPL computation is not used, and the program assumes that 127 dB attenuation is equal to 0 dB SPL for the purposes of setting the DSS attenuators. The other place where an effective SPL may be computed is in the GWE program, where it can be done off-line for any waveform, and using any tone calibration. The same procedure (described below) is used in both cases.


The procedure consists of summing energy contributions from each frequency band in the general waveform. By default, the entire range of frequencies and time are used in the computation, though the user does have the choice of limiting the time window and/or the frequency range over which the effective SPL is computed. The words "procedure" and "program" are used to mean the same thing in the description below.

The necessary ingredients for an effective SPL computation are a general waveform in the time domain, and a tone calibration (typically done using program NEUCAL, see ref # 1). The time domain waveform consists of a series of amplitudes at equal time intervals stored in a GW format on disc. The units of amplitude are assumed to be GW units (which means that they range between a min and max of -32700 to +32700, which is equivalent to approx. -7 to +7 volts at the DSS output before attenuation). The tone calibration is stored on disc by program NEUCAL, and consists of maximum possible amplitudes (in dB SPL) possible at each frequency between a certain range. The frequency increment is linear (usually 60 or 100 Hz) and the frequency range is usually 100 Hz to 30000 or 40000 Hz. There is also a Phase Calibration stored on disc, but that information is not needed nor used by this procedure. Note that the tone calibration is necessary mainly because the output characteristics of any loudspeaker used to present sound are frequency dependent. Most speakers will produce more output at low frequencies, and less at high frequencies which means that a waveform that has mostly low frequency content will sound louder than another of similar amplitude but mostly with high frequency content. Another way of looking at this is to note that the same waveform when played out through two different speakers will usually not sound equally loud. What this means is that if you have the same general waveform, but play it out through two different speakers, then you must compute the effective SPL twice - once for each speaker.

The program starts by reading in the time domain general waveform as well as the tone calibration from disc.

(1) If the number of points in the general waveform is not an exact power of two, the program "re-samples" the waveform using linear interpolation to the next higher power of two. For example, if the waveform has 800 points, it is re-sampled to 1024 points. This is necessary because the FFT routine used in the next step requires waveforms to have an exact power of two as the number of points.

(2) The FFT (Fast Fourier Transform) routine is used to convert the waveform to the frequency domain, and the amplitude spectrum extracted. The amplitude spectrum is expressed in (peak) linear amplitude units.

(3) The tone calibration amplitude data is next used to compute the energy contribution of each frequency band in the waveform as follows : At each frequency, a "corrected" amplitude is computed, converted to "energy" by squaring it and a running sum of energies is computed. The exact computation is shown below :

where X(f) is the "peak amplitude" at frequency f, Gmax is 32768 (the max amplitude that the DSS can play out), C(f) is the amplitude calibration in dB SPL at frequency f. Note that by using "Dc/10" rather than "Dc/20" we are summing energy and not amplitude. Note that X(f) is the peak amplitude, not peak-to-peak, and not rms amplitude.

(4) After the above "Sum" has been computed for all frequencies, the overall "Effective SPL" is computed as the root mean square of the amplitudes, and finally converted to dB, as follows :

where "Espl" is the final computed "Effective SPL" in dB.

(5) In the program GWE, two additional results are also computed. They are : (a) dB per Hz and (b) dB per SQRT(Hz). These are used mainly for comparison with other studies where such numbers have been used. The dB per Hz (dbHz) and dB per SQRT(Hz) (dBSQHz) are computed as follows from the "Sum" obtained in step (3) above :

where Bw is the frequency band-width (in Hz) used in the computation.

Note: In those cases where the band-width of the waveform is wider than that of the tone calibration, the nearest available frequency calibration is used. For example, if the band width of the general waveform extends to 35 KHz, but the calibration was only done out to 30 KHz, then the calibration value at 30 KHz is also applied in the range 30 to 35 KHz. Note also that the effective SPL computation is largely independent of the frequency step size used during the tone calibration.


The method used for the effective SPL computation was suggested by Dr. C.D.Geisler and Dr. W.S.Rhode.


(1) "NEUCAL - Acoustic Calibration Program", R.Kochhar, Tech.Report # 4, Dept. of Physiology.

Back to Top

If you have questions about, or suggestions for, this document, please send them by e-mail to

Return to Documentation Page
Back to The Basement

This page last modified on : May. 2, 2000