Applies to version: 1.1.0

View the code

Go to function

MOORE2016 - Binaural loudness model


[shorttermloudness, longtermloudness, loudness] = moore2016(inputsignal)

Input parameters

inputsignal a vector or 2 dimensional matrix containing the input signal sampled to 32 kHz

Output parameters

 shortterm loudness [phon]
longtermloudness longterm loudness [phon]
loudness maximum loudness [phon]


For each ear, the model includes: an outer and middle ear filter; short-term spectral analysis; calculation of an excitation pattern, a compressive nonlinearity, and smoothing over time. The short-term loudness is calculated as the sum of the short-term loudness values for the two ears. The long-term loudness for each ear is obtained from the short-term loudness. The overall loudness impression is calculated as the sum of the long-term loudness of both ears. The Matlab code provided calculates loudness according to the model described by Moore et al. (2016), but with the modified time constants described by Moore et al. (2018). It was developed from C code for the same model, and Matlab code written for ANSI S3.4-2007, based on Moore et al. (1997) and Glasberg and Moore (2006) and ISO 532-2 (2017), based on Moore and Glasberg (2007). The code may be used with wav files (one or two channels). If a one-channel file is used, the program assumes diotic presentation. To calculate the loudness of a monaural signal, a second channel filled with zeros must be added.


B. R. Glasberg and B. C. J. Moore. A Model of Loudness Applicable to Time-Varying Sounds. J. Audio Eng. Soc, 50(5):331--342, 2002. [ http ]

B. C. J. Moore, B. R. Glasberg, and T. Baer. A Model for the Prediction of Thresholds, Loudness, and Partial Loudness. J. Audio Eng. Soc, 45(4):224--240, 1997. [ http ]