MIDI Optimizer sechsachtel logo

MIDI Optimizer

Estimate rhythmic information in MIDI files

Contact: Harald G. Grohganz

MidiOptimiser: Screenshot GUI
Screenshot of the GUI

MIDI Optimizer is a program for converting performance-based MIDI files into semantically enriched score-like MIDI files. It determines the musical beat grid from a given performance MIDI file and uses this information to map all MIDI events to a musically meaningful time axis without changing their absolute time positions in seconds. Hence the output of this program can be used as an input for existing MIDI quantization software like music notation programs.

Score representation of a recorded P-MIDI file Score representation of the semantically enriched S-MIDI file Piano Roll representation of a performance MIDI file Piano Roll representation of a score-like MIDI file
Differences between pure performance-based MIDI files and semantically enriched score-like MIDI files.
Left: As can be seen from the score representation, the original beat grid has no musical meaning.
Right: Now the beat grid is adapted to the notes (without quantisation) leading to a good score transcription.

MIDI has been used as a quasi standard for encoding and storing score-related parameters. In MIDI files, time information is represented both musically as used in sheet music and physically in seconds which reflects performance aspects. However, in many MIDI files the musical beat and tempo information is set to a preset value with no relation to the actual music content which leads to inappropriate score transcription results.

After determining the musical beat grid from a given performed MIDI file by the method proposed in [2], MIDI Optimizer estimates a global time signature to correct local errors in the pulse grid estimation. Using this tool, you can easily control the most important parameters (as described in the corresponding paper [1]), run different types of the proposed algorithm, and save the final result as a new MIDI file. Furthermore, MIDI Optimizer provides sonification of the automatically tracked beat positions, and exporting the MIDI file for research purposes in a human-readable text file.

Download the program

If you want to use MIDI Optimizer for research purposes, you can download it here for free. Any work created using this program must cite publication [1]. Commercial use is not allowed. For statistical analysis we kindly ask you to inform us about your name and your research institute (not mandatory). Clicking the button starts the download immediately.

Usage type: Research Student Private

The following MIDI files are borrowed from Saarland Music Database (SMD, website) and are originally published under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. These examples are the same as used in publication [1].

Bach_BWV888.mid Chopin_28-4.mid

Harald Grohganz, Michael Clausen, Meinard Müller. Estimating Musical Time Information from Performed MIDI Files. [PDF@ISMIR] In Proceedings of the 15th International Society for Music Information Retrieval Conference (ISMIR), pp. 35–40, Taipei, Taiwan, 2014.
Peter Grosche, Meinard Müller. Extracting predominant local pulse information from music recordings. [IEEE] In IEEE Transactions on Audio, Speech, and Language Processing, vol. 19, no. 6, pp. 1688–1701, 2011.
Bonn University International Audio Laboratories Erlangen