Setting up my own NINJAM server to host “real time” global jam sessions on Ubuntu

Some friends and I have been experimenting with NINJAM over the past couple of weeks and it got to the point where I wanted to run my own NINJAM server, rather than relying on the public servers or Jan Bucholtz’s. if you want to find out more about NINJAM there is a good overview at

It turned out to be relatively easy, although took a little bit of tinkering.

Download the NINJAM server source code from

I then needed to make sure I had the software installed to be able to compile the application:
“sudo apt-get install build-essential”

I unpacked the source code:
“tar xvzf ninjam_server_0.06.tar.gz”

Change into the directory where the ninjamsvr.cpp code resides. In my case this was:
“cd ninjam_server_0.06/ninjam/server”

Compile the code

Take a copy of the example configuration file
“cp example.cfg myconfig.cfg”

After making some changes to the well documented config file you can start the server application by typing;
“./ninjamsvr myconfig.cfg”

I needed to amend my router’s port forwarding to make sure the server was visible to the outside world and that was it.

I’ve chosen to secure my ninjam server with userid/passwords, rather than leave it open to anonymous users. If you want to have a go at a NINJAM sometime, or just to borrow the server for your own test, let me know and I’ll set up a password for you.

Another point worthy of note – because NINJAM relies on a repeating sequence of chords to sync up everyone’s parts, it is important to get the number of bars set correctly. After experimentation I found that if you multiply the number of bars required by four you get the value at which to set the BPI. Therefore, for a 12 bar progression set the BPI to 48.


Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s