Overall goal: To input a song and output certain variables that will allow me to find quantitative patterns between songs.

Example: the time between highest and lowest pitches (in seconds) in a song.

Is there any software that can help me do this?

I have experience in programming so if there is some open-source option that might need a little modifying I am not opposed to that.

2 Answers 2


As you mention that you have experience in programming, the Essentia library might fit your need.

Essentia is 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). It contains an extensive collection of reusable algorithms which implement 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.


Processing has good sound libraries such as Minim and apparently a new factory library check this link.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.