Support |
>I don't want to come off arrogant but when I listen to the examples of >online jam sessions (Ninjam) they sound horribly out of >sink? You're not coming off arrogant, merely ignorant. The short answer: if the playing on Ninjam's public servers sounded completely untight or out of sync, this may either have to do with the reason why most amateur punk bands sound out of sync (btw, really liked your misspelling there), namely because of lack of qualification, or because a bad tech setup, or because they follow an approach for playing that makes the experience for a third party listening in less enjoyable (see explanation below). The rest of the message is rather long-winded... Ninjam has this concept that it "rounds up" transmission delays over the net in a way that make musical sense iff you play in time and have the interval set to a meaningful value. So for this to work (for beat-based music), the musicians need to know what Ninjam's tempo and beat offset is. There are several possibilities, all of which are slightly less than optimal: 1. Use the metronome. Downside: the metronome is output on the same audio output as the music, so you can't (or at last most probably wouldn't want to) use this approach when playing to an audience. Solution: Os has developed this VST version of the ninjam client which features separate outputs. Unfortunately, no public version exists. It should be sufficient if one beat-oriented player (e.g. drummer) listens to the metronome, the others can just play along with him. I never did that myself. 2. Use MIDI clock. One of the clients (the wasabi client) does output a MIDI clock based on Ninjam's time. Downside: the wasabi client won't handle ASIO interface. Workaround: use two computers, one of them running the normal client which handles audio and one of them running the wasabi client which outputs MIDI clock. Problem here: you have a timing offset, which will hurt you iff any of the other participants use either the same approach or the metronome. Workaround: have your MIDI-synced equipment setup so it compensates for that offset (all sequencers and drum machines I know can do that). Again, only one (best the "beat source") would need this cumbersome setup. Examples: Both the tracks "Aspirin Age" and "Virtual Baggy Pants" on http://www.moinlabs.de/i_kqpda.htm were done using this approach. Other approaches: 3. In a situation with only two participants (note that in this discussion, a "participant" is one client - which can very well feed the playing of more than one musician), one participant can for some time establish a groove and ignore what he hears from the other side (or at least not let himself be affected by its timing). The other participant can then simply play on top of that. This sounds good (meaning: in sync) for that other participant, not so much for the first one (or for anyone else who just connects to the server and listens). Examples: the groovy part at the end of "The Milkey Way - Yivli Antare". Here, Charlie played the groovy bass part (not necessarily in sync with Ninjam's tempo), and I played on top of that. "Advantages in Freeform Breeding" - here, both Rick Walker (percussion) and Krispen Hartung (guitar) were one participant, I was the other participant. In both cases, the album uses the recording done on my side. 4. Also, you can simply ignore any beat (works best if playing non-beat-based music). This is the approach that was afaik used also during Warren's and Per's session at Y2K6 kyberloopfest. The funny thing here is that this sounds completely different (not necessarily in an ugly way) at the different participants'. Examples: the rest of "The Milkey Way", "Below this Sneppah". There will also be a track on the second volume of the kybermusik series (due 1st half of 2008) where I'm gonna combine the independent recordings of each participant from a session I did with Tony K. Things that can still go wrong: * as I said, when using the "two computer MIDI approach" AND (somebody else is also using it OR somebody else plays to the metronome), you have to compensate between the timing offset of both your computers. * in example 3, this normally only sounds good in exactly one place. * Ninjam doesn't compensate for latency induced by audio interfaces (although it could - this would be a nice thing one of you software developers could do). * players can be unable to play in sync * what is beautiful for one might be horrible for another one BTW, all you software developers out there (including but not limited to Os): I'd still like a Ninjam client OR a VST plugin (best both) that has the following features: * ASIO support (only for the standalone client) (priority 1 - this is already available in the normal client) * can output MIDI clock (priority 1 - this is available in the wasabi client) * has an additional setting for audio hardware latency to compensate for that (priority 3) * independent routing of audio output including metronome (priority 2) * running on XP platform (priority 1) Looking forward to your implementations! Rainer