Skip to content
This repository

JSONloops is a real-time, multiuser audio sequencer for node.js and the browser.

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 bin
Octocat-spinner-32 lib
Octocat-spinner-32 loops
Octocat-spinner-32 public
Octocat-spinner-32 vendor
Octocat-spinner-32 wavs
Octocat-spinner-32 .gitignore
Octocat-spinner-32 ReadMe.md
Octocat-spinner-32 logo.png
Octocat-spinner-32 package.json
Octocat-spinner-32 server.js
ReadMe.md

JSONLoops

JSONLoops is a multi-user audio sequencer reminiscent of Fruityloops. Audio playback is handled by node.js servers, while multiple browsers act as control devices. Songs are stored in the JSONloop format, which are simply nested JSON arrays.

Disclaimer

This is Alpha software which was created for NYC Music Hack Day 2011. We won best collaborative project. This library works and is awesome. It could be epic if we all work on it.

Video Demo

http://www.youtube.com/watch?v=MSZLLgel6Gs

Installation

  npm install JSONloops

Now you will have to rebuild node as 32bit, since irrKlang doesn't support 64 arch's yet.

  cd /path/to/node
  ./configure --dest-cpu=ia32
  make
  make install

We'll be replacing this last step with a much easier process soon.

Usage

To get started, you'll want to clone the JSONloops project and use the demo server

git clone https://github.com/Marak/JSONloops.git
cd jsonloops
[sudo] npm install .
node server.js

The audio sequencer will now start playing on your local machine, you'll hear sounds. To access a control interface for your JSONloops server, visit http://localhost:8080/

Why did you build this?

Because I'm insane.

The JSONLoop format

A JSONLoop is nothing but a nested JSON array that follows a somewhat specific format.

the arrays are nested in the following hierarchy 

* SONG
*   TRACKS
*     MEASURES
*       BEATS

Check out the nyc.json file or metronome.json file for example loops.

can anyone create a proper json-schema to represent this? it also has to validate the loop is well formed...

Authors

Marak Squires - Created project, JavaScript, HTML, CSS, invented the JSONloops format, built core sequencing code

Elijah Insua - Writer of C bindings, solver of the hard problems

hij1nx - Writer of C bindings, JavaScript, HTML, CSS UX and UI.

Something went wrong with that request. Please try again.