Date of Award


Document Type

Thesis - SCU Access Only


Santa Clara : Santa Clara University


Computer Engineering

First Advisor

Yi Fang


A lot of people do not have the time to craft good, new playlists, they just want to find them online. Similarly, the search for new music is often hard. Many music aggregation sites exist, but only link songs by artist, title, or genre. We created a search engine to create playlists of similar music to the query for users. Our system recommends music based on a series of algorithms which compare songs actual musical qualities. Our results show a great deal of promise, all songs returned are quite similar. However speed is quite an issue. Our extraction takes almost five minutes, which is an eternity for a web application. Our comparisons can be returned at a decent rate, with about ten songs being compared every three seconds. From this, we have found that identifying a song is quicker than performing analysis, and thus we implemented an audio fingerprinting module to compensate for the speed. From our systems results, we concluded that computing similarities across these music features provides a good way to explore music, but that in order to compete with other systems such as Pandora or Spotify, we would need to have a much deeper music database as well as a player system implemented. To make our system useful, we would want to take popular songs and then find lesser known songs to give smaller artists more exposure. Serendipity is less of a playlist creator, and more of a search engine for finding new music. To realize these goals, we would need to partner with someone who can get us the music files of these lesser known artists and also address our speed issues through either a distributed system or increased optimization of our core algorithms.

SCU Access Only

To access this paper, please log into or create an account in Scholar Commons using your scu.edu email address.