Skip to main content

CHORUS software

A MATLAB toolbox for the Characterisation of Recorded Underwater Sound (CHORUS V.8)

This page provides links to download a MATLAB (The MathWorks Inc., Natick, MA, USA) toolbox for the Characterisation Of Recorded Underwater Sound (CHORUS V.8). CHORUS is a set of MATLAB routines and a stand-alone executable program to process, review and analyse large datasets of sea noise recordings made by autonomous recorders, such as SM2 from Wildlife Acoustics, Sound Traps from Ocean Instruments, LS 1/2 from Loggerhead Instruments, OBS from Guralp Systems and LF and HF CMST underwater sound recorders. CHORUS is the main software tool to analyse data from the Passive Acoustic Observatories of the Integrated Marine Observing System.

Sea noise data processing and analysis with CHORUS consist of two stages:

  1. Data pre-processing. This involves: (1) extraction of necessary timing data from the recording files; (2) calculation of Power Spectrum Density (PSD) using a time window of chosen length in each recording; and (3) correction of PSD for recorder’s sensitivity, gain and, when possible, frequency response to get the output data in sound pressure units (µPa). The resulting data are saved in MAT-files in a format suitable for further data analysis in CHORUS Graphic User’s Interface (GUI). Data pre-processing of a single set of recordings is done in a batch mode, so no operator attendance is required.
  2. Data analysis in CHORUS GUI. CHORUS GUI can be run either in the MATLAB environment or as a stand-alone executable program, CHORUS_GUI.exe (only Windows 64-bit version is currently available). See User’s Guide for details of data analysis.

The current version of CHORUS works with sound recordings made only in two formats: (1) Waveform Audio File Format (.WAV) and (2) binary .DAT with ASCII headers and footers supported in the CMST-DSTO sea noise loggers.

The current version of the pre-processing routines works with sound data files recorded by four models of sea noise recorders: (1) CMST-DSTO low-frequency noise logger, (2) CMST high-frequency noise loggers with SM2+ digital recorder boards, (3) SM2 noise recorders from Wildlife Acoustics, and (4) Sound Trap recorders from Ocean Instruments. These routines can be more or less straightforwardly modified to pre-process data from other noise recorder models in a way suitable for CHORUS GUI.
To find out more details, see the User’s Guide and Gavrilov&Parsons, 2014 [Gavrilov A.N. and Parsons M.J.G. (2014), “A MATLAB tool for the Characterisation Of Recorded Underwater Sound (CHORUS)”, Acoustics Australia v.42, No.3, pp. 190-196].


  • Users Guide
  • Gavrilov & Parsons
    Gavrilov A.N. and Parsons M.J.G. (2014), “A MATLAB tool for the Characterisation Of Recorded Underwater Sound (CHORUS)”, Acoustics Australia v.42, No.3, pp. 190-196.
  • CHORUS V8 (archive for distribution) [16MB]
    Download and extract files from this archive

CHORUS V8 Download Form

Potential problems

Some manufacturers of sea noise recorders change occasionally the format of timing data usually written in file names. If this takes place in the future models and an updated version of CHORUS is not available yet, make corresponding changes (pretty much straightforward) in the MATLAB routines that read timing data from file names (e.g. SM2plus_read_all_start_times.m and ST_read_all_start_times.m).