[shorttermloudness, longtermloudness, loudness] = moore2016(inputsignal)
inputsignal | a vector or 2 dimensional matrix containing the input signal sampled to 32 kHz |
shorttermloudness | |
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 ]