Make It Funky

Add James Brown To Any Song

A 2013 Boston Music Hack Day experiment with the Echonest remix.js library... and the Godfather of Soul.
James Brown, the Godfather of Soul
  1. Pick a Clip

How it Works

This experiment uses EchoNest's beat detection and remixing capabilities to add funky decorations in time with the music.

  1. Clips are analyzed via EchoNest's python API.
  2. When a clip is selected for funkification, the remix.js library fetches the clip analysis from EchoNest. This clip analysis contains a wealth of information, including information about where the beats are in a song.
  3. The remix.js library uses that beat information to James Brown's grunts and wails at specific beats, via the WebAudio API.

Source code is available on github: makeItFunky

Exercises for the Reader

  • Add in the world's funkiest beats from John "Jabo" Starks. This could be done with the techniques used in The Bonhamizer.
  • Ditto above, but with JB's trademark guitar scratches.
  • Add a breakdown to any song.

Deep Questions

  • Is funkification idempotent? What does it mean to add James Brown to himself? To quote Being John Malkovich, What happens when a man goes through his own portal?

    I believe the answer is...the Godfather gets even funkier. Funkification is not idempotent.

    A weird coincidence: after I wrote the bit about John Malkovich, a friend of mine sent me this video: Being James Brown. Twisted minds think a like?

Made By...

This was made by Alex, building largely off the remix.js examples.

Alex had a great time making this hack. When he's not hacking, Alex is working on an online musical dojo called Musikata. Check it out!