Gearslutz

Gearslutz (https://www.gearslutz.com/board/)
-   Q+A with Justin Frankel (designer of Reaper) (https://www.gearslutz.com/board/q-a-with-justin-frankel-designer-of-reaper-/)
-   -   NINJAM! (https://www.gearslutz.com/board/q-a-with-justin-frankel-designer-of-reaper-/118371-ninjam.html)

pipelineaudio 9th April 2007 12:41 AM

NINJAM!
 
Since Jules brought it up :)

Kiss your friends, family, and job goodbye

The free NINJAM client download at http://ninjam.com/ will be the end of them all.

The clock goes into warp speed as you blow hour after hour jamming along with others across the world. After a few crossover - techno - bluegrass - shred - blues jams with salsa thrown in, you'll find your beard stubley, your fingernails long and overgrown, the sun and moon swapping spots like ping pong balls, and your creativity thru the roof!

To use:
1. simply download the client http://ninjam.com/download.php
2. set up your audio I/O in preferences
3. plug in your guitar, sax, oboe, theremin, whatever
4. Find a room with people already jamming at http://ninjam.com/jamfarm/index.php

5. Connect to that server and start JAMMING!!!

NINJAM sessions can be recorded for collaboration purposes and mixed later

For a bonus, newer versions of reaper contain a ReaNINJAM plugin. Put this on your master buss, connect to a live room and you can use DX,VST, and JS FX and send your whole reaper mix into NINJAM!

This is handy for me, I just plug into a DI then into a micpre/AD/PC interface. I run amplitube 2 or simulanalog jcm900 as an insert effect in reaper and play right thru a virtual amp

Jules 9th April 2007 09:03 AM

How are latency issues dealt with?

Thanks,

Justin Frankel 9th April 2007 03:53 PM

In NINJAM, the clock rates of everybody jamming are synchronized (initially by a metronome, but once things get going, the drummer usually ends up being enough to follow as long as his or its tempo is constant).

NINJAM relies on the fact that for many styles of music, once people are playing at the same rate, it doesn't really matter if you're playing with the current measure or the last measure (A measure may be a musical measure, or some multiple of one). So if Alice and Bob are NINJAMming together, and Alice is playing her "measure 5", Bob might be playing his "measure 5" along with Alice's "measure 4", and vice versa...

We call this "faketime", since it feels a lot like realtime, but it isn't dependent on any network/audio device/audio codec latencies.

The main downside is that it is very tough to play arranged songs, because every person hears a slightly different arrangement (Bob plays his measure 5 with Alice's measure 4, whereas Alice hears Bob's measure 5 when she's playing her measure 6, etc), so synchronizing changes isn't really realistic.


But it's good for jamming and experimenting...

GregP 10th April 2007 07:12 AM

I tried Ninjam for the first time tonight. One of the users put up a webcam and although it wasn't synched to the audio, it was still nice to have the visual. Any plans to put video "webcam"-type stuff as a feature?

PS, the jam was great! I really like this client! Thanks for coding it and getting it out there for free.

Greg

Jules 10th April 2007 07:57 AM

Can't you organise a pop up window that gives structure messages like. ''HERE COMES THE BRIDGE! 2! 3! 4! ?

pipelineaudio 10th April 2007 08:01 AM

Quote:

Originally Posted by Jules (Post 1222846)
Can't you organise a pop up window that gives structure messages like. ''HERE COMES THE BRIDGE! 2! 3! 4! ?

you could type it in the chat there, but hey random trainwreck transitions are half the fun of ninjam lol

Empty Planet 10th April 2007 01:32 PM

Quote:

Originally Posted by Jules (Post 1222846)
Can't you organise a pop up window that gives structure messages like. ''HERE COMES THE BRIDGE! 2! 3! 4! ?


heh - heh - heh




yingyang

orange 10th April 2007 01:48 PM

Quote:

Originally Posted by Jules (Post 1222846)
Can't you organise a pop up window that gives structure messages like. ''HERE COMES THE BRIDGE! 2! 3! 4! ?

my understanding, correct me if I'm wrong, is that the individual musicians won't even be on the same bar. That means even if you did have a popup you would all 'take it to the bridge' at different times.

Work arounds would be to have a delay equal to the chord progression of the song (12 bars for a 12 bar blues) - or just jam for 12 hours on the one chord ?

Justin Frankel 10th April 2007 04:40 PM

Quote:

Originally Posted by Jules (Post 1222846)
Can't you organise a pop up window that gives structure messages like. ''HERE COMES THE BRIDGE! 2! 3! 4! ?


You could, but it would be tough.. if you got the popup, you could decide to play the bridge, but when you did, you'd still hear other people playing the chorus or whatnot, and then presumably halfway through the bridge or at the next verse, you'd hear other people playing the start of the bridge... it'd all be very confusing... ;)

-Justin

Jules 10th April 2007 04:42 PM

Could a jam initiator - chose to have an established structure? (I bet I am not getting something here.. shiee)

orange 10th April 2007 05:03 PM

Quote:

Originally Posted by Jules (Post 1223437)
Could a jam initiator - chose to have an established structure? (I bet I am not getting something here.. shiee)

It still wouldn't help - because you are never hearing anything in realtime. You are always playing a delayed track, this is unavoidable.


Imagine trying to play along with a band with your headphone feed sent through a 1 bar delay. It might sound great in your headphones but the rest of the band will be looking at you wondering why you are playing everything one bar late. They then decide to delay their headphone feed by 1 bar to try and equal it up......this then means that you are hearing everything 2 bars late ......etc.etc.etc.

Of course a 12 bar blues with a monitoring delay of 12 bars would work out just fine.

you canna change the laws of physics, Jim.

theblue1 10th April 2007 10:07 PM

Quote:

Originally Posted by Justin Frankel (Post 1221244)
In NINJAM, the clock rates of everybody jamming are synchronized (initially by a metronome, but once things get going, the drummer usually ends up being enough to follow as long as his or its tempo is constant).

NINJAM relies on the fact that for many styles of music, once people are playing at the same rate, it doesn't really matter if you're playing with the current measure or the last measure (A measure may be a musical measure, or some multiple of one). So if Alice and Bob are NINJAMming together, and Alice is playing her "measure 5", Bob might be playing his "measure 5" along with Alice's "measure 4", and vice versa...

We call this "faketime", since it feels a lot like realtime, but it isn't dependent on any network/audio device/audio codec latencies.

The main downside is that it is very tough to play arranged songs, because every person hears a slightly different arrangement (Bob plays his measure 5 with Alice's measure 4, whereas Alice hears Bob's measure 5 when she's playing her measure 6, etc), so synchronizing changes isn't really realistic.


But it's good for jamming and experimenting...

After reading about online jamming systems for a few years I figured the only way you could really have anything reasonable would be a system like this...

I was just checking out a realtime jamming utility and there was a little proviso something like, "At the current time, due to network latency issues, only musicans a few miles from each other will be able to jam together in real time..." and I was thinking, "At the current time..."? What, are you guys trying to get the laws of physics repealed?

Yet another one (Lightspeed) was cagey about how they were approaching it but their promo material (for the eventually payfor service) was saying things like, Jam in realtime with your friends on other continents...

I pinged a few sites in New York (I'm in LA) and the round trip latency was around 100 ms... not exactly a do-able latency...


I'll check this out.

Newbie Brad 10th April 2007 11:08 PM

Hi Justin,
I've been Ninjam deprived since I have a dial-up connection. However I'm doing a lot of work at a highspeed worksite and my host was happy yesterday to let me set him up with Ninjam for us to try it. It seems to work great. We only listened, haven't jammed yet. Going to try it soon. Best, NB

MarkusColeman 10th April 2007 11:13 PM

Quote:

Originally Posted by theblue1 (Post 1223936)
I was just checking out a realtime jamming utility and there was a little proviso something like, "At the current time, due to network latency issues, only musicans a few miles from each other will be able to jam together in real time..." and I was thinking, "At the current time..."? What, are you guys trying to get the laws of physics repealed?

quantum entanglement? jummpp
and they even found out how to transmit information faster than light using this effect? heh heh

Quote:

Originally Posted by theblue1 (Post 1223936)
I pinged a few sites in New York (I'm in LA) and the round trip latency was around 100 ms... not exactly a do-able latency...

many universities are connected through the WWW2 network.
this ensures "direct" connections, way smaller delays.
it has been shown, that you can jam in Einstein time (read: relatively in real time heh) across states. but this was only a showcase and the WWW2 network is for universities and scientific use only; to be able to use it, you need some expensive hardware too.

now jamming with musicians across CA without leaving your room is something completly different and should be the (realistic) focus when playing with this technology. but it's a great concept and I will def. try it out (to be honest, I haven't yet managed to try Reaper out, so this might take some time) kfhkh

DontLetMeDrown 11th April 2007 12:54 AM

Holy hell. I just finished my first jam session. I think I just need to cancel my cable bill now and I'm all set. Yeah there's lag, but it still works and it's very very fun. Time went by quick but I think we had about 3 different little arrangements going that were a blast. Very stimulating and feels more productive than just sitting in front of the tube or the net.