NINJAM – online jamming

Community Jams is committed to helping people play music together.  We believe that there is special value to be found in sharing music live with one another. While distance and disease keep us from sharing as closely as we used to, we have ways of sharing forms of music which many have found valuable.   

Thanks to the work of Robert Steele, Community Jams has a workable distance-music option to offer.

Overview

NINJAM is the name of an internet protocol which takes what everybody plays, waits one musical phrase, and then shares it. Since even telephone latency precludes making music together, a protocol was developed which adds enough latency to everybody’s internet-musical contribution to make sure all parts start together the next go around. In essence, you’re always playing against what everybody played last round.  Everybody generates everybody else’s backing track live, using a metronome to keep us synced. A complete overview of NINJAM is available through Cockos Inc.

Community Jams hosts online NINJAM sessions where community members can play along with others, playing against what everybody played last go-around, and semi-live sharing our music. Starts and stops are ragged due to everybody being offset one phrase, but the middle-section of each song gets quite solid  

You can set short phrases or long phrases, but you’re always stuck behind a phrase. So, while NINJAM is useful for contributing to a latency-live musical piece in the style of rounds, blues, and simple chord patterns, it has limitations and requirements. One of the biggest challenges is learning to follow a metronome. Digital recorders and loopers (upon which Ninjam is based) can feel like a very unforgiving experience for musicians who do not regularly play with others or external backing tracks. We can significantly benefit from regular NINJAM sessions where we must follow an external source for the beat (metronome).

Requirements

These sessions require an audio interface to be set up on your home computer. One example of such an audio interface is the Focusrite Scarlett Solo, currently just over $100 on Amazon. It is also suggested that your computer be hard-wired to your router via an ethernet cable. 

Once this interface is recognized by your computer, the best solution that we’ve found is to download REAPER, a digital audio workstation. After installing REAPER on your computer, you can procure a temporary license during the pandemic on their website. Follow the procedure in the video link provided to set up a REAPER with a NINJAM client (see below for NINJAM JS for Chrome) in the FX channel to access the internet and our NINJAM server online during our sessions.

If you wish, you may download the standalone client app JAMTABA, but support for this is unavailable for those who are unable to get it to function.
Community Jams hosts weekly Zoom sessions to answer simple questions and simultaneously help verify NINJAM connection attempts to Bob Steele’s virtual server online. 

The address for the Ninjam server that Bob set up is jamor.bsteele.com:2049 (the 2049 is the port address it needs to use) 

While there are other more sophisticated clients for NINJAM, NINJAM JS on Chrome appears to be the simplest and most universal way to enjoy it.

Using the chrome browser, install the Ninjam JS chrome extension from:
https://chrome.google.com/webstore/detail/ninjam-js/hgcicpalplclhnoephgjpmoknnnmdfje
Once installed, run it from the “Apps” link on the far left of the bookmarks bar near the top of the Chrome window. You may have to give it permission to use your audio. Once running, you should see the app pop up:

in the app, use “custom” server, with these settings:

Server host: jamor.bsteele.com:2049

Username: <your name>

Password: <Leave blank>

Click connect and read the server license agreement:

Scroll to bottom, and click “accept”. You should see something like this:

The green bar at the top should be moving across the screen, displaying beats.

Extra Notes

  • Don’t forget you’ll need an audio interface for your instrument/microphone on the computer, something like the Focusrite Scarlett Solo.
  • The server jamor.bsteele.com will normally be up right around scheduled jam times. Contact Bob for more information.
  • A red metronome means that it’s off.
  • Click “transmit” to be heard by others, it should be blue.
  • You will be responsible for locally monitoring your own instrument.
  • Bodhi typically has control of the server beats per minute and beats per interval (BPI, i.e. the cycle count in beats).
  • On a change of BPM or BPI, it might take a full cycle to re-sync, and a weak internet connection can make a mess of it all. Sometimes restarting NINJAM JS will clear errors.

Thank you

It is our hope to help us and other musical communities find a solution to keep their music going during this time of forced distance until we may all safely share air, space, and song again. Until then, Bob’s work setting up a virtual NINJAM server online has helped us find a way to connect our musical contributions in offset-real time. If you are interested, send an email to play@communityjams.org so you can join Community Jams during a NINJAM session online and share your music!