Melody analysis - MusicBricks Workshop


This tutorial will guide you through some tools for Melody Analysis using the Essentia library ( Melody analysis tools will extract a pitch curve from a monophonic or polyphonic audio recording. It outputs a time series (sequence of values) with the instantaneous pitch value (in Hertz) of the perceived melody. We provide two different operation modes: 1) using executable binaries; 2) Using Python wrappers.

Using executable binaries

You can download the executable binaries for Linux (Ubuntu 14) and OSX in this link: To execute the binaries you need to specify the input audio file and an output YAML file, where the melody values will be stored.

Extracting melody from monophonic audio

Locate an audio file to be processed in WAV format (input_audiofile).

Usage: ./streaming_pitchyinfft input_audiofile output_yamlfile

Extracting melody from polyphonic audio

Usage: ./streaming_predominantmelody input_audiofile output_yamlfile

Using Python wrappers

You should first install the Essentia library with Python bindings. Installation instructions are detailed here: .

In [1]:
print 'Hello this is Melody analysis'

Hello this is Melody analysis