In the nowadays western music, it is common that a song is played on semi-tone scale. This means that the notes of the song can be chosen only from a specific set of frequencies, called the semi-tone scale. For example, the set of notes of a piano or a guitar is finite, and singing or playing "between" the notes, is considered being out of tune. Therefore, singing out of tune can be defined by the amount of deviation from this scale. In this project, given an arbitrary standard single human voice song, we are able to find out of tune notes and change them, either automatically to the repaired tuned semi-tone scale, or to actually change them to any other predefined desired notes. This is done in 3 parts - (1) analyzing the frequency and improving it (2) classifying the song into notes and determining a fixing function (3) fixing the song.