The International Society of Music Information Retrieval


Conferences
Transactions of ISMIR
Women in MIR
Resources


About the Society
Membership
Community Statistics
Contact

Resources / MIR Software

The software are presented alphabetically. Additionally to the list of software tools presented below, here is an evaluation of eight feature extraction toolboxes from Moffat et al. (2015).

aubio | Extraction of annotations from audio signals, written in C and has a Python interface. Its features include segmenting a sound file before each of its attacks, performing pitch detection, tapping the beat and producing midi streams from live audio.

Chroma Toolbox | MATLAB implementations for extracting various types of novel pitch-based and chroma-based audio features.

Essentia | An open-source C++ library for audio analysis and audio-based music information retrieval released under the Affero GPLv3 license (also available under proprietary license upon request) which has been developed by the Music Technology Group in Universitat Pompeu Fabra. Essentia was awarded with the Open-Source Competition of ACM Multimedia in 2013.

FMP Notebooks | Jupyter/Python notebooks for teaching and learning Fundamentals of Music Processing (FMP).

jAudio | Java-based stand alone application with a Graphic User Interface (GUI) and a Command Line Interface (CLI), which can batch process and outputs XML and ARFF formats.

jMIR | An open-source software suite implemented in Java for use in music classification research. It can be used to study music in both audio and symbolic formats, as well as mine cultural information from the web and manage music collections. jMIR includes software for extracting features, applying machine learning algorithms, mining metadata and analyzing metadata.

libfmp | Python package that goes along with the FMP notebooks.

librosa | Python package for music and audio processing.

libtsm | Python package for Time-Scale Modification (TSM) and pitch-shifting.

LibXtract | Libxtract can extract low level features in real time. It is written in C, Max-MSP, Pure Data, Super Collider and Vamp.

Marsyas | Full real time feature extraction tool usable via a command line interface or a graphic user interface. It is written in C++ and Vamp and proposed a SVM machine learning algorithm.

Meyda | Low-level feature extraction written in Javascript and so is aimed toward web-based and real time applications.

MIR Toolbox | Low and high level audio feature extraction. It is written in Matlab and includes preprocessing, classification, similarity measures and clustering functionality.

mir_eval | Python library for computing common heuristic accuracy scores for various music/audio information retrieval/signal processing tasks.

Similarity Matrix (SM) Toolbox | MATLAB implementations for computing and enhancing similarity matrices in various ways.

Sync Toolbox | Python package with reference implementations for full-fledged music synchronization pipelines.

Tempogram Toolbox | MATLAB implementations for extracting various types of recently proposed tempo and pulse related audio representations.

Timbre Toolbox | Matlab toolbox for low and high level feature extraction.

Time-Scale Modification (TSM) Toolbox | MATLAB implementations of various classical time-scale modification algorithms like OLA, WSOLA, and the phase vocoder, among more recent advances.

Music Recognition, Encoding, and Transcription | Transcription assistance tool using Deep Learning techniques developed by the PRAIG group in Alicante. Digitize your manuscripts with ease.

YAAFE | Low level feature extraction library designed for computational efficiency and batch processing. It is written in C++ and can be used with Python and Matlab.