top of page
Conclusions

We reached our primary goal of creating a playlist generator that will create a playlist with a specific order when given a preselected list of songs. To reach this goal we completed implementing pitch, key, and tempo algorithms and a driver to put all of them together.  

 

We have verified the accuracy and correctness of the pitch and key algorithm together since it is impossible to confirm the number of occurrences of each pitch, so if a song’s key is correct to the key listed in the database we can confirm that the algorithm is working correctly. Running through the test we have gotten >80% accuracy in getting the correct key of the song. Some of the misclassifications were relative major and minor keys or the most frequently sampled pitch isn’t the tonic of the key (likely to happen with jazz, experimental, or non-western music). 

 

For the tempo detection algorithm, we have completed integrating it with the pitch and key algorithm. When running through the test, there are times where the tempo identified is half or double the correct BPM. This happens when the sampled beat detected to get the tempo sounds different from what the music sounds like. 

 

With multiple sets of preselected songs and running them through the playlist generator, we were able to confirm the accuracy of many of the sets where it outputted the expected playlist unless there was a key detection error that affected the playlist generated; usually the key detection error was only off by one key due to pitch distributions. 

 

Due to lack of time, we were not able to get to our secondary/stretch goal of implementing the user attributed music suggestion that will continue the playlist. However, with the playlist generator, we have created, and adding another filter database will not be very hard. 

bottom of page