beat tracking software has the potential to better resolve note onsets that may have been detected in a crude fashion. Beat tracking is often the first step in the detection of percussion instruments. Despite the intuitive nature of 'foot tapping' of which most humans are capable, developing an algorithm to detect those beats is difficult. Most of the current software algorithms for beat detection use a group competing hypothesis for beats-per-minute, as the algorithm progressively finds and resolves local peaks in volume, roughly corresponding to the foot-taps of the music. How automatic music transcription works To transcribe music automatically, several problems must be solved: 1. Notes must be recognized – this is typically done by changing from the time domain into the frequency domain. This can be accomplished through the Fourier transform. Computer algorithms for doing this are common. The fast Fourier transform algorithm computes the frequency content of a signal, and is useful in processing musical excerpts. 2. A beat and tempo need to be detected (Beat detection)- this is a difficult, many-faceted problem. The method proposed in Costantini et al. 2009 focuses on note events and their main characteristics: the attack instant, the pitch and the final instant. Onset detection exploits a binary time-frequency representation of the audio signal. Note classification and offset detection are based on constant Q transform (CQT) and support vector machines (SVMs). A collection of public domain sheet music can be found here. This in turn leads to a “pitch contour” namely a continuously time-varying line that corresponds to what humans refer to as melody. The next step is to segment this continuous melodic stream to identify the beginning and end of each note. After that, each “note unit” is expressed in physical terms (e.g., 442 Hz, .52 seconds). The final step is then to map this physical information into familiar music-notation-like terms for each note (e.g., an A4, quarter note). Detailed computer steps behind automatic music transcription In terms of actual computer processing, the principal steps are to 1) digitize the performed, analog music, 2) do successive short-term, fast Fourier transform (FFTs) to obtain the time-varying spectra, 3) identify the peaks in each spectrum, 4) analyze the spectral peaks to get pitch candidates, 5) connect the strongest individual pitch candidates to get the most likely time-varying, pitch contour, 6) map this physical data into the closest music-notation terms. These fundamental steps, originated by