harmony-analyser is a set of visual tools for music harmony analysis of WAV/MIDI input, powered by JHarmonyAnalyser library

The difference we bring is the approach based on music theory, chord and chroma distances. JHarmonyAnalyser uses recent music theory models to extract musical meaning and distances between chords and chroma vectors. We aim to develop open-source music player, which is musician / musicologist-friendly and aid recent music information retrieval tasks.

harmony-analyser tools and JHarmonyAnalyser library are licenced under the GNU GPL License.

Tools are compatible with GPL Licensed Vamp plugins which can be used for additional analysis.

To contribute, please follow our guideline in GitHub repository.


2018-01-19 Kara1k dataset publication is now available in IEEE Xplore library.

2017-12-19 Kara1k dataset with our harmony-analyser features is now fully available! Our work was awarded a Honorable Mention by the chairs for 6 best papers on IEEE ISM 2017 in Taichung, Taiwan. Please see the conference poster and presentation to get a grasp on how to utilize these features and dataset for your own research.

2017-10-01 harmony-analyser was used to extract features for the new Kara1k dataset along other feature extraction tools such as Marsyas, YAAFE or Essentia. The dataset and results will be presented on IEEE ISM 2017 conference in Taichung, Taiwan. This dataset was built thanks to a partnership with Recisio's KaraFun karaoke application.

2017-06-13 We travel to Poland to present first results of our harmony analysis on Cover Song Identification task, as a part of CISIM 2017 conference. Paper published in Springer LNCS series.

2017-05-09 A little article by the Charles University (in Czech language) written about the recent ACM SRC competition, where the harmony-analyser project was presented by Ladislav Marsik.

2017-04-21 Our contribution was awarded a 1st place in ACM SIGAPP SAC 2017 Student Research Competition! We presented a poster, oral presentation and a live demo of our tools to the SRC judges. We advanced to the ACM SRC Grand Finale for all the SRC Winners. Research abstract soon to appear in the ACM Digital Library.

2017-04-11 We presented how to use our tools on DATESO 2017 conference. Paper or presentation for download.

2016-12-16 We were on 2016 Joint WOCMAT - IRCAM Forum Conference in Taiwan! Check out the contribution paper or presentation.

2016-12-07 Preparing the new GUI for version 1.2 - see sneak peak in the screenshots.

2016-09-19 Version 1.1 is now available (new Chroma distances and visualizations).


Please choose from the releases below:

harmony-analyser tools

Latest Beta: ha-executable-1.2-beta.jar (GUI - Executable JAR)

Latest Beta Script: ha-script-1.2-beta.jar (CLI script)

Latest Stable: 2016-09-19 ha-executable-1.1.jar (GUI - Executable JAR)


  1. Added Chroma Complexity analysis, evaluating transitions between subsequent chromas:
    • Simple: only activation changes between chromas
    • Tonal: Focusing on activation changes between non-key tones, common key being calculated for 2 chromas
  2. Added visualizations for all recent high-level plugins (Chordino, Transition Complexity, Chroma Complexity) in the new Visualization Tool tab
Show previous releases Hide previous releases

2016-08-11 ha-executable-1.0.jar (GUI - Executable JAR)


In this version, 2 basic types of analysis are supported:
  1. Chord transition analysis: Using your MIDI keyboard, capture chords, see their names and structure and evaluate their transition
  2. Audio analysis: Analyse WAV files in a given folder. Supported analysis include:
    • low-level VAMP plugin (NNLS Chroma) analysis
    • high-level VAMP plugin (Chordino) analysis
    • and high-level Transition Complexity analysis, based on theory described in this paper, taking the low-level analysis as an input
Show previous releases Hide previous releases

Screenshots of available tools

Chord transition tool

Audio analysis tool

Visualization tool


GitHub: https://github.com/lacimarsik/harmony-analyser
e-mail: marsik@ksi.mff.cuni.cz

Ladislav Maršík
Department of Software Engineering, Faculty of Mathematics and Physics, Charles University
Malostranské nám. 25, 118 00 Prague, Czech Republic


This software has been funded by the Charles University, project GA UK No. 1580317 and by project SVV 260451.