[fLeftRelevant, LLeftRelevant, fRightRelevant, LRightRelevant] = moore2016_spectrum(s, Fs, dBMax, wHann, vLimitingIndizes)
s | input signal |
Fs | sampling frequency [Hz] |
dBMax | maximum dB |
wHann | matrix with window coefficients in columns |
vLimitingIndizes | indices for fft assembly |
fLeftRelevant | frequency of relevant components left ear |
LLeftRelevant | level of relevant components left ear |
fRightRelevant | frequency of relevant components right ear |
LRightRelevant | level of relevant components right ear |
This code calculates the spectrum of the input signal as required by the loudness model moore2016 in the version for TVL 2016 based on ANSI S3.4-2007 and Moore & Glasberg (2007).
It returns only the relevant components, i.e. components that have at least -30 dB SPL and at least 60 dB less than the maximum component. Overall, 4 vectors are returned: frequency and level for the left ear, and same for the right ear. dBMax is the rms level of a full scale sinusoid hann windows and limiting indizes for the 6 FFTs are passed so they are calculated only once. Much is done with intensity rather than level so that nonzeros() works correctly without the need of excemptions.