electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
 Forum index » How-tos
Jamming and streaming with Ninjam
Post new topic   Reply to topic
Page 1 of 1 [16 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Author Message
mosc
Site Admin


Joined: Jan 31, 2003
Posts: 18197
Location: Durham, NC
Audio files: 212
G2 patch files: 60

PostPosted: Sun May 03, 2020 4:55 pm    Post subject: Jamming and streaming with Ninjam Reply with quote  Mark this post and the followings unread

With the Covid pandemic most of us are keeping our physical distance, so it's hard to get together and make music. I have been looking into software that allows multiple musicians to make music together from locations all over Earth. There are ways to do this just using the Shoutcast servers already on electro-music.com, but that is a bit difficult to set up and requires the help of the admins.

Several of us have tried Jamkazam. I have found this very difficult. It forces you to adjust the settings on your audio interface. That's not suitable for musicians that use their studios for making music when not using Jamkazam. Also, Jamkazam is a corporation that is set up to make money off of the musicians that use their service. Their license agreement is onerous.

Ninjam is a multi-platform system for MacOS, Windows, and Linux. It comes in Reaper, which is not free but you can use the it as nagware as a "trial" for free. It allows you to jam with many remote musicians that use the software. Each person listens to themselves and all of the other participants. The ninjam client is a VST plugin. Everyone uses the ninjam client to connect to a Ninjam server. Each person can control the levels of themselves and all of the others. Each person can make a recording, and it it possible of to stream the live signal to the Shoutcast servers on electro-music.com as we normally do for live streams.

I have installed a wide-open server at electro-music.com:9098 so anyone who wants can experiment by themselves or with others. This server isn't really good for all collaborations, for that you are best with a "private" server. I will set up a private server for anyone who sends me a PM here on electro-music.com. The private servers can be set up to require a username and password so only those that are part of the collaboration can connect.

If your already use Reaper you are all set. Just add an audio track and load the built-in VST called ReaNINJAM. There are YouTube videos that show you how to get it working.

Ninjam tries to solve the latency problems by giving every collaborator a fixed delay that is set by the servers admin, not the electro-music.com admin but the person that requests the private server. The admin sets the BPM and how many notes in a measure. If you play ambient or free-form music, the you don't have to use that feature.

Bill Fox and I did a live streamed concert on e-m last night. It was really just an experiment but it proved to us that is is a workable solution the deserves further investigation.

http://electro-music.com/forum/phpbb-files/twyndyllyngs_ninjam_2020may2_339.mp3

If your have any experience with this or comments of any type, please post them here. There are topics here related to this:

http://electro-music.com/forum/topic-71758.html

_________________
--Howard
my music and other stuff

Last edited by mosc on Thu May 21, 2020 3:29 pm; edited 2 times in total
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address
blue hell
Site Admin


Joined: Apr 03, 2004
Posts: 24079
Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320

PostPosted: Mon May 04, 2020 4:46 pm    Post subject: Re: Jamming and streaming with Ninjam Reply with quote  Mark this post and the followings unread

mosc wrote:


Ninjam tries to solve the latency problems by giving every collaborator a fixed delay that is set by the servers admin, not the electro-music.com admin but the person that requests the private server. The admin sets the BPM and how many notes in a measure. If you play ambient or free-form music, the you don't have to use that feature.

Bill Fox and I did a live streamed concert on e-m last night. It was really just an experiment but it proved to us that is is a workable solution the deserves further investigation.


The concert that you and Bill fave worked quite well indeed!

We did experience some inter-continental clicks it seems on the testing session we did before that (US folks mentining EUclicks and the other way around .. but also EU to EU clicks, maybe because the server is in the americas) .. maybe the the free-form-non-synced-voice-chat-delay .. or whats it called ... was causing that .. we should do some more testing on that I think .. in the test session I gave up when the click-reports seemed endless .. but the admin set delays might just solve that .. I for one did not look into that feature well enough.

For intra-continental it seems to work fine though, the concert you and Bill did was very enjoyable.

Maybe PHOBoS could have a say here .. as he did some intercontinetal stuff with NinJam in the past.

_________________
Jan
also .. could someone please turn down the thermostat a bit.
Posted Image, might have been reduced in size. Click Image to view fullscreen.
Back to top
View user's profile Send private message Visit poster's website
PHOBoS



Joined: Jan 14, 2010
Posts: 5591
Location: Moon Base
Audio files: 705

PostPosted: Tue May 05, 2020 4:36 am    Post subject: Reply with quote  Mark this post and the followings unread

clicks as in audible clicks ?
Don't think I've ever experienced those but the music was often loud and disjointed so hard to tell.
It did do the job though and although we rarely set an actual tempo it seemed to work fine.
A fun thing about using public servers was that random strangers could join in.


I don't see a download for a client anymore (apart from obsolete versions) only a link to Reaper,
does it really rely on that these days ? Last night, I tried installing the client I still have
and it looks like it connected ok but I think I am not getting any sound into it.

_________________
"My perf, it's full of holes!"
http://phobos.000space.com/
SoundCloud BandCamp MixCloud Stickney Synthyards Captain Collider Twitch YouTube
Back to top
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger
airlock



Joined: Apr 06, 2007
Posts: 297
Location: Calabash, NC USA
Audio files: 53

PostPosted: Tue May 05, 2020 3:43 pm    Post subject: Reply with quote  Mark this post and the followings unread

Isn't what you want here?: https://www.cockos.com/ninjam/
Back to top
View user's profile Send private message
mosc
Site Admin


Joined: Jan 31, 2003
Posts: 18197
Location: Durham, NC
Audio files: 212
G2 patch files: 60

PostPosted: Tue May 05, 2020 7:10 pm    Post subject: Reply with quote  Mark this post and the followings unread

Bill and I connected up tonight on the experimental server. We discovered a few things.

1) Jan was right, if, on the Ninjam client console, you pick Voice Chat mode on the input (ninjam calls the Local Channel) you can get clicks. Leaving it in the default mode, Normal NINJAM, the clicks disappeared, after a reconnect to the server.

2) By default the Ninjam server sets the tempo to 120 and the BPI to 8. This gives you a long but very predictable latency. This might be OK for some beat-oriented styles. But in order to reduce latency, I set the following Ninjam server settings: 400 BPM, 1 BPI. This gave the shortest latency but the tempo indicator was flashing so fast that it could cause an epileptic seizure Shocked . Not a big deal because you can minimize the window or move down below where the tempo indicator is not visible.

The latency we experienced was approx 1 second. We both were using 512 sample buffers on our audio interfaces. We can reduce latency more by using smaller buffers.

The BPM and BPI setting must be made on the ninjam server. I changed these on the experimental server by editing a config file and restarting the server. I'm figuring there is probably a way for the administrator of a private ninjam server to do this. Something to look into.

3) Finally, we wanted our recording to have separate tricks for what each of us was playing. Using Reaper I was able to record Bill's signal separately by muting the local channed on the "Monitoring mix" on the ninjam console. I added another track on Reaper to record and monitor myself. So we have 2 stereo recordings of each of us.

party time!

This took a while to figure out but it's pretty simple in the final analysis.

_________________
--Howard
my music and other stuff
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address
Sven



Joined: Mar 10, 2017
Posts: 48
Location: Norway

PostPosted: Wed May 06, 2020 1:33 am    Post subject: Re: Jamming and streaming with Ninjam Reply with quote  Mark this post and the followings unread

mosc wrote:
It comes in Reaper, which is not free but you can use the it as nagware as a "trial" for free.


Nagging can be turned off until end of june 2020 Smile
Back to top
View user's profile Send private message
PHOBoS



Joined: Jan 14, 2010
Posts: 5591
Location: Moon Base
Audio files: 705

PostPosted: Wed May 06, 2020 12:59 pm    Post subject: Reply with quote  Mark this post and the followings unread

Airlock wrote:
Isn't what you want here?: https://www.cockos.com/ninjam/

I only see download links for the server and "Very Old, Original, and Obsolete NINJAM Clients".

_________________
"My perf, it's full of holes!"
http://phobos.000space.com/
SoundCloud BandCamp MixCloud Stickney Synthyards Captain Collider Twitch YouTube
Back to top
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger
mosc
Site Admin


Joined: Jan 31, 2003
Posts: 18197
Location: Durham, NC
Audio files: 212
G2 patch files: 60

PostPosted: Thu May 07, 2020 10:50 am    Post subject: Reply with quote  Mark this post and the followings unread

PHOBoS wrote:
Airlock wrote:
Isn't what you want here?: https://www.cockos.com/ninjam/

I only see download links for the server and "Very Old, Original, and Obsolete NINJAM Clients".


The most up-to-date client is "VST: ReaNINJAM (Cockos)" in Reaper.

_________________
--Howard
my music and other stuff
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address
modulator_esp
Stream Operator


Joined: Feb 04, 2005
Posts: 2845
Location: Nottingham, UK
Audio files: 276
G2 patch files: 1

PostPosted: Thu May 07, 2020 6:19 pm    Post subject: Reply with quote  Mark this post and the followings unread

Enjoyed the set Howard and Bill, and curious how the latency actually works
_________________
Jez
music | adventures in sound | gear for sale
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mosc
Site Admin


Joined: Jan 31, 2003
Posts: 18197
Location: Durham, NC
Audio files: 212
G2 patch files: 60

PostPosted: Fri May 08, 2020 1:29 pm    Post subject: Reply with quote  Mark this post and the followings unread

modulator_esp wrote:
curious how the latency actually works


You can read the reasoning on https://www.cockos.com/ninjam/

I don't understand the latency in measures even though I've read the web page over and over. We tied to play with that setup and both of us got so confused we threw in the towel. I could see that if you set up a loop or played a repeating form of music like blues it might be fun though.

Setting the BPM and BPI to their extremes left us with a short enough latency that we allowed us to make music together, as long as we didn't try to play jazzy or beat oriented stuff. We will keep it to only "ambient" and "noise" and "experimental" music. It works well for that.

_________________
--Howard
my music and other stuff
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address
modulator_esp
Stream Operator


Joined: Feb 04, 2005
Posts: 2845
Location: Nottingham, UK
Audio files: 276
G2 patch files: 1

PostPosted: Sat May 09, 2020 2:47 pm    Post subject: Reply with quote  Mark this post and the followings unread

Thanks, it actually sort of makes sense to me, they artificially increase the latency so everyone is playing along to the other participant's previous measure

'The NINJAM client records and streams synchronized intervals of music between participants. Just as the interval finishes recording, it begins playing on everyone else's client. So when you play through an interval, you're playing along with the previous interval of everybody else, and they're playing along with your previous interval. If this sounds pretty bizarre, it sort of is, until you get used to it, then it becomes pretty natural. In many ways, it can be more forgiving than a normal jam, because mistakes propagate differently. '

_________________
Jez
music | adventures in sound | gear for sale
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Sun May 10, 2020 6:29 pm    Post subject: Reply with quote  Mark this post and the followings unread

Jeremy and I tried out Ninjam, either when he was living in Canada 2007-2008, or New Mexico 2008-2009. The latency differentials killed us, although I assume it has progressed in 11ish years.

I once looked at using GPS signal clocks to synchronize audio streams as a research project, but found that the device driver latencies for GPS cards in computers were longer than the satellite-to-card latencies, and non-deterministic to boot. So much for that.

A few of us, including Banjo Dave, talked about a Ninjam-or-similar distributed zero-input mixer jam some years ago, which could work because you mostly don't have a beat or steady tempo, and so you could just wander over a sonic terrain without having to be too tightly synced.

I might be interested in that some time this summer. I should actually be grading final projects right this second, so I don't have to stay up super late. Grades are due Tuesday afternoon, I have lots to complete, and I want to go hiking Tuesday!

_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Sun May 10, 2020 6:46 pm    Post subject: Reply with quote  Mark this post and the followings unread

modulator_esp wrote:
So when you play through an interval, you're playing along with the previous interval of everybody else, and they're playing along with your previous interval. If this sounds pretty bizarre, it sort of is, until you get used to it, then it becomes pretty natural. In many ways, it can be more forgiving than a normal jam, because mistakes propagate differently. '

When I finger pick into an echo-delay wearing isolating headphones, it is exactly like this. I play rounds with myself across time. Same concept, although with longer latency. My sister-in-law speech therapist once told me that one therapeutic approach to stutterers is to feed back their delayed speech this way. They entrain on their recent speech and actually reduce their stuttering.

From Effects of delayed auditory feedback and frequency-shifted feedback on speech control and some potentials for future development of prosthetic aids for stammering
Quote:

Theoretical accounts of DAF and FSF

In this section, two contrasting accounts of why short-delay DAF and FSF produce marked improvement in the fluency of people who stammer and fluent speakers are considered. Coverage of theories is not, then, comprehensive and, as indicated under ‘structure of the review’, weighted towards the author's EXPLAN theory. The two theories were selected because they propose that these alterations affect different locations in the central nervous system (CNS). Kalinowski's group maintains that these forms of ARAI operate at high levels in the CNS in speakers who stammer. Howell's group suggest that ARAI operates on low level (probably cerebellar) timekeeping processes in all speakers.

DAF is Delayed Audio Feedback, FSF is Frequency-Shifted Feedback, and ARAI is alterations to recurrent auditory information.

_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
mosc
Site Admin


Joined: Jan 31, 2003
Posts: 18197
Location: Durham, NC
Audio files: 212
G2 patch files: 60

PostPosted: Wed May 13, 2020 2:17 pm    Post subject: Reply with quote  Mark this post and the followings unread

Acoustic Interloper wrote:
Jeremy and I tried out Ninjam, either when he was living in Canada 2007-2008, or New Mexico 2008-2009. The latency differentials killed us, although I assume it has progressed in 11ish years.


I don't think it's changed much. Users with privs can change the delay with these commands to the text window

/bpm 120
/bpi 4

for example (4 beats/measure at 120 BPM)

I'm trying to configure it out so anonymous users can change this.

_________________
--Howard
my music and other stuff
Back to top
View user's profile Send private message Send e-mail Visit poster's website AIM Address
Acoustic Interloper



Joined: Jul 07, 2007
Posts: 2067
Location: Berks County, PA
Audio files: 89

PostPosted: Thu May 14, 2020 7:48 am    Post subject: Reply with quote  Mark this post and the followings unread

Looks like Jeremy & I ran our test in November 2008, 11.5 years ago! At the bottom of that thread:
Quote:

The verdict from tonight's trial of Ninjam is not so good. Audio travel time from Albuquerque, New Mexico (there) to southeast PA (here) was around 8 seconds, from here to there was almost (but not quite) double that, and it was not a function of the metronome speed, as far as we could tell. Basically, random delay.
I don't see how it could do this syncing properly. I have not looked at the client software source code, but, even if it sends timestamps along with the audio data, they would be timestamps in relation to what? The idea, as I understand it, is to have the receiving client add in the remaining needed delay to get the output at the far end to be a multiple of the time for a measure, derived from the metronome. But, if there's no way to calculate the sender-to-server and server-to-receiver network delays, how would the receiving client software know how much additional delay to add?


also this didn't pan out per non-deterministic delay in the GPS card/driver mentioned above:
Quote:

There has to be a way to sync these clocks. Would Global Positioning Satellites be a way to do it? Triangulate not only for position, but also for time?


I'd consider the previously discussed zero-input mixer Ninjam later this summer, some time after solstice event. The July 7, 2014 post planning for electro-music 2014 gives this high-level compositional structure for the piece we workshopped and played at Huguenot that year.
Quote:

2014 (based on Wolfram’s classification scheme for complex systems):
1. FIXED
2. PERIODIC
3. CHAOTIC
4. COMPLEX

For FIXED we could drone and converge on a tonal center / mode over the space of ~6 minutes.
For PERIODIC we start looping pitches (manually or digital fx in the feedback path) until we converge on a tempo or polyrhythm. Rhythmic phase ("the one") does not have to lined up, only the tempo & pitch ceneter, which is doable over a ~6 minute span.
CHAOTIC is easy. Noise, although tempered.
COMPLEX is always the hardest one. Maybe take turns soloing or duets. We've done that at EM ZIM performances.

Gradually transition from section to section, where someone gently nudges, and others slide along into the nest section at approximate minute-marks.

I'd be up for that in a late July time frame. No need to sync phrase boundaries for that.

_________________
When the stream is deep
my wild little dog frolics,
when shallow, she drinks.
Back to top
View user's profile Send private message Visit poster's website
MusicMan11712



Joined: Aug 08, 2009
Posts: 1082
Location: Out scouting . . .

PostPosted: Thu May 14, 2020 2:04 pm    Post subject: Reply with quote  Mark this post and the followings unread

Looks interesting. I'd be up for experimenting if I can figure out how to do it without Reaper. Not that Reaper is bad, just that when I test drove it, it was leading me instead of allowing me to use it as a tool.

Looks like I uninstalled Reaper a few years back, but I do have a free key good through the end of June.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic
Page 1 of 1 [16 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
 Forum index » How-tos
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use