Fork me on GitHub

Remix

Echo Nest Remix is the Internet Synthesizer. Make amazing things from music, automatically.
Turn any music or video into Python or JavaScript code.

JavaScript:

Step 0: Test drive remix.js

We've made a simple page where you can try out remix.js. Just change the code in the text box, press 'Remix', and see what happens!

Step 1: Install remix.js

remix.js is a beta version of Remix that works with JavaScript and the Web Audio API. You can get it here. You'll need a browser that supports the Web Audio API, like Chrome or Safari.

Step 2: Set up your Echo Nest API Key

To use remix.js, you need to get API key from the Echo Nest Developer Center, by registering an account.

Once you've got your key, you'll need to reference it when making calls to the Echo Nest's servers in your scripts. That will look something like this:

var apiKey = 'YOUR_API_KEY';

Step 3: Look at the tutorial

There's a remix.js tutorial that you can read. It walks through the simplest possible example (extracting the first beat from every bar), with step-by-step comments.

Step 4: Try an example

Running the remix.js examples should be as simple as putting the examples files on a server and inserting your new API key. Then, go to one of the example webpages, wait for the remixing process to finish, and press play!

Or, check out the other examples on this server: one.html, two.html, and assemble.html.

If you want to do easy uploading, you can work with sandbox.html and use the Echo Nest's servers. The audio files on those servers are cleared every week though.
You can source audio directly from SoundCloud - take a look at soundcloud.html. Or, if you're feeling your oats, and want to host your own server to allow users to upload audio to be remixed, you can check out our remix server repo.

Lastly, if you want to load files via the HTML5 filesystem, check out filesystem.html. This requires the track to be already known by the Echo Nest's servers though.

Step 4: Make something beautiful

For inspiration on what to do with remix.js, you can check the examples. Happy remixing!