For example, take a look at a loudness plot for Stairway to Heaven. Songs with the biggest increase in average loudness rank the highest. It is a simple algorithm that compares the average loudness of the first half of the song to the average loudness of the second half of the song. To algorithmically identify songs that have a slow build, we can use a technique similar to the one I described in The Stairway Detector. Looking at these plots it is easy to see which songs have a Slow Build. Of course there are other aspects beyond loudness that a musician may use to build a song to a climax – tempo, timbre and harmony are all useful, but to keep things simple I’m going to focus only on loudness. Looking at a non-Slow Build song like Katy Perry’s California Gurls we see that the loudness curve is quite flat by comparison: Let’s look at another classic Slow Build – The Hall Of the Mountain King – again our intuition is confirmed: Clearly we see a rise in the volume over the course of the song. The green line is the raw loudness data, the blue line is a smoothed version of the data. First, here’s the canonical slow builder: Stairway to Heaven: One would expect that Slow Build songs will have a steady increase in volume over the course of a song, so lets look at the loudness data for a few Slow Build songs to confirm this intuition. Since we’ve analyzed the audio of millions and millions of tracks here at The Echo Nest we should be able to automate this type of query. It’s an interesting music query since it is primarily focused on what the music sounds like.
#Had a dat sublime mp3 series
This is the second in a series of posts exploring the Million Song Dataset.Įvery few months you’ll see a query like this on Reddit – someone is looking for songs that slowly build in intensity. The hack day has been great fun, kudos to the Montreal team for putting it all together. The linear search through a million loudness vectors takes about 20 seconds, too long for a web app, this can be made palatable with a little Ajax. The simple matching approach (Euclidean distance between normalized vectors) works surprisingly well. But since I actually wanted to finish my hack I’ve saved those improvements for another day. I had some ideas that I wanted to explore to make the matching better ( dynamic time warping) and the lookup faster ( LSH). You can then listen to the song in Spotify (if the song is in the Spotify collection).Ĭoding a project in 24 hours is all about compromise. The hack lets you draw the loudness profile for a song and the app will search through the Million Song Data Set to find the closest match. For my hack I created an application with the catchy title “ Search for music by drawing a picture of it”. I’ve spent the weekend hacking on a project at Music Hack Day Montreal.