Sonic Visualiser

Sonic Visualiser is an application for viewing and analysing the contents of music audio files. It is a free software distributed under the GPL-2.0-or-later licence.

History
Sonic Visualiser was developed at the Queen Mary University of London's Centre for Digital Music in 2007. It was written in C++ with Qt and released under the terms of the GNU GPL.

Overview
Sonic Visualiser represents acoustic features of the audio file either as a waveform or as a spectrogram. Spectrogram is a heatmap, where horizontal axis represents time, vertical axis represents frequency, and the colors show presence of frequencies. Sharpness and smoothness of the spectrogram can be configured. There are three types of spectrogram: Generic spectrogram covers the full frequency range and uses linear frequency scale. Melodic-range spectrogram covers the range which usually contains musical detail. Peak-frequency spectrogram performs phase difference calculations and estimates exact frequencies at each peak cell.
 * generic spectrogram
 * melodic-range spectrogram
 * peak-frequency spectrogram

The interface consists of panes and layers. Panes allow to display multiple visualisations simultaneously, and they get aligned in the time axis. A pane can have multiple layers which are used for annotation. The user can configure color schemes for layers, and they can be navigated by clicking the labeled tabs.

There are multiple types of annotation layers which can be edited, including time instants, time-value plots, labels and images. Time instants do not have any associated value, and they can be used to annotate points (e.g. beat locations). Annotations allow the user to clarify relationships between musical parameters.

Sonic Visualiser supports third-party plugins in the Vamp plugin format. The plugins take audio input and parameters and return values for display. There are plugins which compute spectral flux and spectral centroid. Other plugins include automatic melody extraction, beat finding, chord analysis, etc.

Sonic Visualiser is available for Linux, OS X, and Windows operating systems.