Query by Humming is a content-based music information retrieval engine that enables users to sing/hum a short section of a song’s tune into their phone and retrieve information about the song.
A typical Query by Humming system could generally be divided into 3 parts:
Melody db Processing Module
Taking music score source material (midi, singing voice or even polyphonic music files) to generate a melody database.
Acoustic Processing Module
Transcribing a user’s humming/singing acoustic input queries to searchable melody features.
Melody Matching Module
Computing the similarity between a database reference and a user’s query and ordering the final results by similarity.