Archive for category code
Do you do Music Information Retrieval?
Posted by Paul in code, ismir, Music, music information retrieval, The Echo Nest on September 10, 2010
We’re ramping up hiring at the Echo Nest. We’re looking for good MIR people at different experience levels to help us realize the company’s vision of knowing everything about all music automatically. I would guess that we are the closest analog to ISMIR in the industry– we only do music (audio and text), the base technology is straight out of our dissertations (brian, tristan) and we’re active in conferences and universities. We work with an amazing amount of music data on a daily basis and we sell it to some great people and companies that are changing the face of music.
MIR-background candidates are especially encouraged to apply as long as you have relevant experience and want to work on implementation at a very fast growing startup. These are almost all full time positions in our offices near Boston, MA USA. Even if you’re not graduating for a while let us know if you’re interested now.
More info at: http://the.echonest.com/company/jobs/
Music Hack Day London
I’ve just returned from my weekend in London where I participated in the Music Hack Day held at the Guardian Offices in London. The event was attended by nearly 200 hackers who spent the weekend learning about new music technologies and then using those technologies to build something new. This was a fantastic event that seemingly went off without a hitch. The internet worked, there was plenty of coffee, sodas and beer, and it was a very comfortable space to get stuff done. And people got things done – over 50 hacks were built – Here are some of my favorites:
Speakatron – A program that looks at you through your web cam and plays a sound when you open your mouth. It can tell what shape you’re making and how high your mouth is on the screen as synthesis parameters. This one was the big crowd pleaser. Here’s a pic of Marek giving his demo:
Future of Music 2010 – Brian Whitman presents the best music recommendation technology ever – Future of Music (2010)” is a Mac OS X app that scans your iTunes library and computes the music you are not supposed to listen to anymore based on your preferences. It then helpfully deletes it from iTunes and your hard drive. Skips the recycle bin. Just like other recommender systems, it uses a lot of fancy math (and data from Echo Nest and last.fm) that really doesn’t matter in the end. Just click the button and let it take care of your life. Yes, indeed, this app erases the music from your hard drive that you shouldn’t be listening too.
Lazy DJ – LazyDJ is an app for lazy DJs who do not want to think about what song they should play next.
Radio 1 Playlist Squirrel – Using small woodland animals to help discover music. You have to see it to understand it. Great demo. Hope they put it online, because, really the world needs more music discovering squirrels.
Radio Map – a real time browser for on-line radio – Sebastian Heise and Michael Hlatk analyzed the audio for hundreds of Internet radio stations and built a visualization of the Internet radio space that lets you browse for stations based on music similarity.
Auto Score Tubing – this is an amazing hack – using score synchronizing tech from Queen Mary’s music researchers, the folks from Musescore creates a hack that automatically synchronizes a music score with a youtube performance of that score. Check out the video, it is awesome.
BumbleTab – a very patient guitar tutor – waits patiently for you to play the right notes, then stiches all of your right notes into an awesome song:
Piracy – Making music piracy more like real piracy… Think Geocaching for music…
MashBox – a community driven mashable jukebox – which you can use to make mashups like Beat and Whip It. There’s a nifty prezo on the process they used to create the mashup.
Earth Destroyers – this is my hack – it is a web app that tells you which bands have earth destroying tours.
It is almost like being there:To get a taste of what it was like being at the Music Hack Day be sure to check out Thomas Bronte’s photos of the event – in addition to being the CEO of musescore, Thomas is also an excellent photographer: Music Hack Day London 2010 Slide show
Congrats to Dave Haynes and all of the team that put together the Music Hack Day London. It was a fantastic event!
Visual Music
Posted by Paul in code, data, events, fun, Music, The Echo Nest, visualization on July 28, 2010
The week long Visual Music Collaborative Workshop held at the Eyebeam just finished up. This was an invite-only event where participants did a deep dive into sound analysis techniques, openGL programming, and interfacing with mobile control devices.
Here’s one project built during the week that uses The Echo Nest analysis output:
(Via Aaron Meyers)
Novelty playlist ordering
[tweetmeme source= ‘plamere’ only_single=false] We’ve been building a new playlisting engine here at the Echo Nest. The engine is really neat – it lets you apply a whole range of very flexible constraints and orderings to make all sorts of playlists that would be a challenge for even the most savvy DJ. Playlists like 15 songs with a tempo between 120 and 130 BPM ordered by how danceable they are by very popular female artists that sound similar to Lady Gaga, that live near London, but never ever include tracks by The Spice Girls.
I was playing with the engine this weekend, writing some rules to make novelty playlists to test the limits of the engine. I started with rules typical for a similar-artist playlist: 15 songs long, filled with songs by artists similar to a seed artist (in this case Weezer), the first and last song must be by the seed artist, and no two consecutive songs can be by the same artist. Simple enough, but then I added two more rules to turn this into a novelty playlist that would be very hard for a human to make. See if you can guess what the two rules are. I think one of the rules is pretty obvious, but the second is a bit more subtle. Post your guesses in the comments.
0 Tripping Down the Freeway - Weezer
1 Yer All I've Got Ttonight - The Smashing Pumpkins
2 The Most Beautiful Things - Jimmy Eat World
3 Someday You Will Be Loved - Death Cab For Cutie
4 Don't Make Me Prove It - Veruca Salt
5 The Sacred And Profane - Smashing Pumpkins, The
6 Everything Is Alright - Motion City Soundtrack
7 The Ego's Last Stand - The Flaming Lips
8 Don't Believe A Word - Third Eye Blind
9 Don's Gone Columbia - Teenage Fanclub
10 Alone + Easy Target - Foo Fighters
11 The Houses Of Roofs - Biffy Clyro
12 Santa Has a Mullet - Nerf Herder
13 Turtleneck Coverup - Ozma
14 Perfect Situation - Weezer
Here’s another playlist – with a different set of two novelty rules, with a seed artist of Led Zeppelin. Again, if you can guess the rules, post a comment.
0 El Niño - Jethro Tull
1 Cheater - Uriah Heep
2 Hot Dog - Led Zeppelin
3 One Thing - Lynyrd Skynyrd
4 Nightmare - Black Sabbath
5 Ezy Ryder - The Jimi Hendrix Experience
6 Soulshine - Govt Mule
7 The Gypsy - Deep Purple
8 I'll Wait - Van Halen
9 Slow Down - Ozzy Osbourne
10 Civil War - Guns N' Roses
11 One Rainy Wish - Jimi Hendrix
12 Overture (Live) - Grand Funk Railroad
13 Larger Than Life - Gov'T Mule
Keith Moon meets Animal
Another vafromb.py masterpiece from joshmillard.
Some NameDropper stats
Posted by Paul in code, fun, Music, The Echo Nest on July 11, 2010
The NameDropper has been live for less than a day and already I ‘ve collected some good data from the game play. Here are some stats:
Total games played: 1841
Total unique players: 462
Total play time: 30hrs, 20mins, 36 seconds
The artists that were most frequently confused with fake artists were:
MeToo – a scrobbler for the room
Posted by Paul in code, fun, Music, The Echo Nest, web services on June 11, 2010
[tweetmeme source= ‘plamere’ only_single=false] One of the many cool things about working at the Echo Nest is that we have an Sonos audio system with single group playlist for the office. Anyone from the CEO to the greenest intern can add music to the listening queue for everyone to listen to. The office, as a whole has a rather diverse taste in music and as a result I’ve been exposed to lots of interesting music. However, the downside of this is that since I’m not listening to music being played on my personal computer, every day I have 10 hours of music listening that is never scrobbled, and as they say, if it doesn’t scrobble, it doesn’t count. Sure the Sonos system scrobbles all of the plays to the Echo Nest account on Last.fm but I’d also like it to scrobble it to my account so I can use nifty apps like Lee Byron’s Last.fm Listening History or Matt Ogle’s Bragging Rights on my own scrobbles.
This morning while listening to that nifty Emeralds album, I decided that I’d deal with those scrobble gaps once and for all. So I wrote a little python script called MeToo that keeps my scrobbles up to date. It’s really quite simple. Whenever I’m in the office, I fire up MeToo. MeToo watches the most recent tracks played on The Echo Nest account and whenever a new track is played, it scrobbles it to my personal account. In effect, my scrobbles will track the office scrobbles. When I’m not listening I just close my laptop and the scrobbling stops.
The script itself is pretty simple – I used pylast to do interfacing to Last.fm – the bulk of the logic is less than 20 lines of code. I start the script like so:
% python metoo.py TheEchoNest lamere
when I do that, MeToo will continuously monitor most recently played tracks on TheEchoNest and scrobble the plays on my account. When I close my laptop, the script is naturally suspended – so even though music may continue to play in the office, my laptop won’t scrobble it.
I suspect that this use case is relatively rare, and so there’s probably not a big demand for something like MeToo, but if you are interested in it, leave a comment. If I see some interest, I’ll toss it up on google code so anyone can use it.
It feels great to be scrobbling again!
We swing both ways
Perhaps one of the most frequently asked questions about Tristan’s Swinger is whether it can be used to ‘Un-swing’ a song. Can you take a song that already swings and straighten it out? Indeed, the answer is yes – we can swing both ways – but it is harder to unswing than it is to swing. Ammon on Happy Blog, the Happy Blog has given de-swinging a go with some success with his de-swinging of Revolution #1. Read his post and have a listen at Taking the swing out of songs. I can’t wait for the day when we can turn on the TV to watch and listen to MTV-Unswung.
Frasier does Nine Inch Nails
Posted by Paul in code, fun, remix, The Echo Nest on June 5, 2010
Oh My – Musician Josh Millard has recreated The Downward Spiral using nothing but audio from the NBC sitcom Frasier. So wrong, and yet, so right. Josh has the whole remixed album plus a video on his blog:
Six Degrees of Black Sabbath
[tweetmeme source= ‘plamere’ only_single=false] My hack at last week’s Music Hack Day San Francisco was Six Degrees of Black Sabbath – a web app that lets you find connections between artists based on a wide range of artist relations. It is like The Oracle of Bacon for music.
To make the connections between the artists I rely on the relation data from MusicBrainz. MusicBrainz has lots of deep data about how various artists are connected. For instance there are about 130,000 artist-to-artist connections – connections such as:
- member of band
- is person
- personal relationship
- parent
- sibling
- married
- involved with
- collaboration
- supporting musician
- vocal supporting musician
- instrumental supporting musician
- catalogued
So from this data we know that George Harrison and Paul McCartney are related because each was a ‘member of the band’ of The Beatles. In addition to the artist-to-artist data MusicBrainz has artist-track relations (Eric Clapton played on ‘While My Guitar Gently Weeps’), artist-album (Brian Eno produced U2’s Joshua Tree), track-track (Girl Talk samples ‘Rock You Like A Hurricane’ by the Scorpions for the track ‘Girl Talk Is Here’). All told there are about 130 different types of relations that can connect two artists.
Not all of these relationships are equally important. Two artists that are members of the same band have a much stronger relationship than an artist that covers another artist. To accommodate this I assign weights to the various different types of relationships – this was perhaps the most tedious and subjective part of building this app.
Once I have all the different types of relations I created a directed graph connecting all of the artists based upon these weighted relationships. The resulting graph has 220K artists connected by over a million edges. Finding a path between a pair of artists is a simple matter of finding the shortest weighted path through the graph.
We can learn a little bit about music by looking at some of the properties of the graph. First of all, the average distance in the graph between any two artists in the graph chosen at random is 7. Some of the top most connected artists along with the number of connections:
-
- 5372 Various Artists
- 1604 Wolfgang Amadeus Mozart
- 1275 Johann Sebastian Bach
- 905 Ludwig van Beethoven
- 696 Linda Ronstadt
- 611 Diana Ross
- 560 [traditional]
- 538 Antonio Vivaldi
- 534 Jay-Z
- 528 Georg Friedrich Händel
- 494 Giuseppe Verdi
- 491 Johannes Brahms
- 490 Bob Dylan
- 465 The Beatles
- 442 Aaron Neville
Here we see some of the anomalies in the connection data – any classical performer who performs a piece by Mozart is connected to Mozart – thus the high connectivity counts for classical composers. A more interesting metric is the ‘betweeness centrality’ – artists that occur on many shortest paths between other artists have higher betweenness than those that do not. Artists with high betweenness centrality are the connecting fibers of the music space. Here are the top connecting artists:
-
- 565 Pigface
- 312 Various Artists
- 135 Mick Harris
- 122 Black Sabbath
- 120 The The
- 115 Youth
- 93 Bill Laswell
- 79 J.G. Thirlwell
- 74 Painkiller
- 72 F.M. Einheit
- 71 Napalm Death
- 63 Paul McCartney
- 63 Flea
- 60 Material
- 60 Andrew Lloyd Webber
- 57 Luciano Pavarotti
- 57 Raimonds Macats
- 56 Ginger Baker
- 56 Mike Patton
- 54 Johnny Marr
- 54 Paul Raven
- 53 Brian Eno
I had never heard of Pigface before I started this project – and was doubtful that they could really be such a connecting node in the world of music – but a look a their wikipedia page makes it instantly clear why they are such a central node – they’ve had well over a hundred members in the band over their history. Black Sabbath, while not at the top of the list is still extremely well connected.
I wrote the app in python, relying on networkx for the graph building and path finding. The system performs well, even surviving an appearance on the front page of Reddit. It was a fun app to write – and I enjoy seeing all the interesting pathways people have found through the artist space.












