Dept. of Comput. Sci., Univ. of Waikato, Hamilton, New Zealand
SST (Sight Singing Tutor) is a computer-assisted instructional program to teach the skill of singing melodies at sight. The program displays a melody on the screen, accepts acoustic input from a user, then evaluates the user's attempt to sing the melody. SST's primary signal processing tasks are frequency identification, note segmentation, and matching the singer's input against the test melody. SST tracks frequency using the well-known Gold--Rabiner algorithm [J. Acoust. Soc. Am. 46, 442--448 (1969)], averaging over 20-ms frames in order to compensate for sampling error at higher frequencies. Notes are segmented using smoothing and grouping procedures based on frequency differences calculated in cents. The user's melody is matched against the test melody using a dynamic time warping (DTW) algorithm designed to match discrete melodic sequences [Mongeau and Sankoff, Comput. Humanit. 24, 161--175 (1990)]. SST displays the DTW match and presents a score, which takes into account both pitch and rhythm. SST works equally well with both male and female voices and allows the singer to sing the melody in his or her most comfortable octave; the prototype system has been shown to accurately identify and display notes ranging from F2 (87 Hz) to A5 (880 Hz).