A music search method for finding a desired song in a song database. The
method comprises generating a difference sequence for each song in the
song database by determining the relative difference between adjacent
notes. Next, a note sequence is chosen for the song to be found within
the song database. A difference argument is generated for the note
sequence by determining the relative difference between adjacent notes.
The difference argument for the note sequence and the difference sequence
for each song in the song database is compared. The desired song is found
if the difference argument for the note sequence corresponds to a portion
of the difference sequence for the desired song, or if the net difference
at the closest match position is within a set difference threshold.