# AARAE

> Part of [LISQM](https://zhenxianli.github.io/LISQM/) (List of Implementations of Sound Quality Metrics), a list of open-source implementations of psychoacoustic metrics. Data as of 2026-10-28. Web page: https://zhenxianli.github.io/LISQM/projects/aarae.html

Audio and Acoustical Response Analysis Environment: a MATLAB environment with a graphical interface, made to support teaching and research in acoustics. Its analysers include ISO 532-1 and Chalupper–Fastl loudness, Moore–Glasberg loudness (stationary, time-varying and binaural), sharpness and Daniel & Weber roughness.

- **Repository:** https://github.com/densilcabrera/aarae
- **Language:** MATLAB
- **Kind:** Application (A program to run, with a graphical or command-line interface; no programming needed.)
- **Group:** established (Described in a publication, used by others, or written by the authors of the model, with more than a year of history.)
- **Licence:** BSD-3-Clause — License for AARAE.txt says that contributed files may carry their own licences; for example, the ISO 226 calculator iso226.m comes with its own license.txt.
- **Latest release:** no release
- **Last commit:** 2024-08-09 (inactive since 2024-08)
- **GitHub stars:** 36
- **Maintainers:** Densil Cabrera, Jonothan Holmes, Ella Manor
- **AI assistance:** not stated
- **Paper:** Cabrera, D., Jimenez, D., & Martens, W. L. (2014). Audio and Acoustical Response Analysis Environment (AARAE): a tool to support education and research in acoustics. *Proceedings of Inter-Noise 2014*, Melbourne, Australia. https://www.acoustics.asn.au/conference_proceedings/INTERNOISE2014/papers/p235.pdf
- **How to cite:** Cite the paper above. Name the version or commit you used.
- **Entry checked:** 2026-10-08

## What it implements

| Metric | Edition | Functions | Status | Validation (as stated) | Notes |
|---|---|---|---|---|---|
| [Zwicker loudness](https://zhenxianli.github.io/LISQM/metrics/loudness-zwicker.html) | [ISO 532-1:2017](https://www.iso.org/standard/63077.html) (stationary and time-varying) | `Loudness_ISO532_1` | available | standard or paper data (time-varying signals only) | The header cites a 2014 draft of ISO 532-1 and describes the code as Ella Manor's 2015 MATLAB port, with adjustments, of the Annex A C code. |
| [Zwicker loudness](https://zhenxianli.github.io/LISQM/metrics/loudness-zwicker.html) | [Chalupper & Fastl (2002)](https://www.ingentaconnect.com/contentone/dav/aaua/2002/00000088/00000003/art00009) (time-varying) | `LoudnessCF` | available | not stated | Also outputs loudness fluctuation and time-varying sharpness. Josef Chalupper's code (2000) in its PsySound3 version (2007), adjusted for AARAE by Ella Manor in 2015. |
| [Moore–Glasberg loudness](https://zhenxianli.github.io/LISQM/metrics/loudness-moore-glasberg.html) | [Moore, Glasberg & Baer (1997)](https://aes2.org/publications/elibrary-page/?id=10272) (one channel, or two channels for binaural loudness) | `Loudness_MGB2b` | available | not stated | A port and extension of PsySound3's code by Densil Cabrera and Doheon Lee, version 1.02 (27 October 2015). Two-channel input gives binaural loudness after Moore & Glasberg (2007). The audio is resampled to 32 kHz. |
| [Time-varying loudness (Moore–Glasberg–Schlittenlacher)](https://zhenxianli.github.io/LISQM/metrics/loudness-moore-glasberg-time-varying.html) | [Glasberg & Moore (2002)](https://aes2.org/publications/elibrary-page/?id=11081) (time-varying; one channel, or two channels for binaural loudness) | `Loudness_MGB2b` | available | not stated | Same function as the stationary model; the binaural extension follows Moore & Glasberg (2007). |
| [Sharpness](https://zhenxianli.github.io/LISQM/metrics/sharpness.html) | [Fastl & Zwicker (2007)](https://doi.org/10.1007/978-3-540-68888-4) (from the specific loudness of LoudnessCF) | `sharpness_Fastl` | available | not stated | The header describes a weighting fitted to data in Zwicker & Fastl's *Psychoacoustics: Facts and Models* (edition not stated), names the method "Fastl (1991)" and credits Claire Churchill (2004). |
| [Roughness (Daniel & Weber)](https://zhenxianli.github.io/LISQM/metrics/roughness-daniel-weber.html) | [Daniel & Weber (1997)](https://zhenxianli.github.io/LISQM/standards.html#ref-daniel-weber-1997) | `RoughnessDW` | available | not stated | Ported from PsySound3's `@RoughnessDW` by Ella Manor and Densil Cabrera (2015). |

## How it was validated

As reported by the project; LISQM has not run the code. Two implementations that agree can still share the same error.

- [Zwicker loudness](https://zhenxianli.github.io/LISQM/metrics/loudness-zwicker.html), ISO 532-1:2017: standard or paper data (time-varying signals only)
  - Ported or adapted from ISO 532-1 Annex A reference program.
  - A commit of 2017-12-11 says the code was verified with the time-varying test signals of Annex B.5; no check of the stationary method is stated.
- [Zwicker loudness](https://zhenxianli.github.io/LISQM/metrics/loudness-zwicker.html), Chalupper & Fastl (2002); [Moore–Glasberg loudness](https://zhenxianli.github.io/LISQM/metrics/loudness-moore-glasberg.html), Moore, Glasberg & Baer (1997); [Time-varying loudness (Moore–Glasberg–Schlittenlacher)](https://zhenxianli.github.io/LISQM/metrics/loudness-moore-glasberg-time-varying.html), Glasberg & Moore (2002); [Roughness (Daniel & Weber)](https://zhenxianli.github.io/LISQM/metrics/roughness-daniel-weber.html), Daniel & Weber (1997): not stated
  - Ported or adapted from [PsySound3](https://zhenxianli.github.io/LISQM/projects/psysound3.html) (the author's own code).

Not stated for Sharpness · Fastl & Zwicker (2007).

## Notes

- `LoudnessZwickerISO532.m` computes Zwicker loudness with the ISO 532 one-third-octave filter bank; the edition is not stated.
- `Fluctuation.m` (Ella Manor, 2017) implements the fluctuation-strength model of Zhou et al., "A Model for Calculating Psychoacoustical Fluctuation Strength" (JAES, September 2015), with 75 ERB channels and generalized modulation depth.
- `Tonality_thirdoctmethod.m` (May 2015) implements the one-third-octave tonality methods of ISO 1996-2 (edition not stated) and AS/NZS 2107.
- `iso226.m` calculates ISO 226 equal-loudness contours; the edition is not stated in its header.

## Before you rely on it

- Runs inside MATLAB and needs several commercial toolboxes: Audio, DSP System, Signal Processing, and Statistics and Machine Learning; some parts also use others, such as Curve Fitting.
- Apart from the ISO 532-1 analyser, the project does not state how the analysers were validated.

## Sources

- https://github.com/densilcabrera/aarae
- https://github.com/densilcabrera/aarae/blob/master/README.txt
- https://github.com/densilcabrera/aarae/blob/master/License%20for%20AARAE.txt
- https://github.com/densilcabrera/aarae/tree/master/Analysers/Level%20and%20Strength
- https://github.com/densilcabrera/aarae/commits/master/Analysers/Level%20and%20Strength/Loudness_ISO532_1.m
- https://github.com/densilcabrera/aarae/blob/master/Analysers/Level%20and%20Strength/Loudness_MGB2b.m
- https://github.com/densilcabrera/aarae/blob/master/Analysers/Level%20and%20Strength/LoudnessCF.m
