Essentia

Open-source library and tools for audio and music analysis, description and synthesis

Extensive collection of reusable algorithms

Flexible and easily extendable algorithms for common audio analysis processes and audio and music descriptors

Cross-platform

Linux, Mac OS X, Windows, iOS, Android, and JavaScript

Fast prototyping

Python’s scientific environment and command-line audio analysis tools

Optimized for computational speed

Used in industrial real-time applications

About

Essentia is a open-source C++ library for audio analysis and audio-based music information retrieval. It contains an extensive collection of algorithms including audio input/output functionality, standard digital signal processing blocks, statistical characterization of data, and a large set of spectral, temporal, tonal and high-level music descriptors. Essentia is cross-platform and it is designed with a focus on optimization in terms of robustness, computational speed and low memory usage, which makes it effective for many industrial applications. The library is also wrapped in Python and includes a number of command-line tools and third-party extensions, which facilitate its use for fast prototyping and allow setting up research experiments very rapidly.

Similarity

Analyze audio and compute features to find similar sounds or music tracks.

Classification

Classify sounds or music based on computed audio features.

Mood detection

Find if a song is happy, sad, aggressive or relaxed.

Key detection

Find a key of a music piece.

Onset detection

Detect onsets (and transients) in an audio signal.

Segmentation

Split audio into homogeneous segments that sound alike.

Beat tracking

Estimate beat positions and tempo (BPM) of a song.

Melody extraction

Estimate pitch in monophonic and polyphonic audio.

Audio fingerprinting

Extract fingerprints from any audio source using the Chromaprint algorithm.

Spectral analysis

Analyze spectral shape of an audio signal.

Loudness metering

Use various loudness meters including algorithms compliant with the EBU R128 broadcasting standard.

Synthesis

Analyze, transform and synthesize sounds using spectral modeling approaches.

Companies and projects using Essentia

Collaborative database of Creative Commons Licensed sounds

Open platform for gathering music information from audio

Interactive iPhone tuner app for learning to play music instrumens

Award winning independent rhythm game using Essentia's beat detection

An iOS/Android app that helps you learn guitar

Cutting-edge interactive products for musical creation

Worldwide music search, interaction and monitoring

Technologies for music education and infotainment