Background and theory of operation

Welcome to our community of musicians.  Note that while we will try to help where possible, we have to presume that you (or at least one member of your ensemble) bring a basic understanding of distributed music with you to this project.

Distributed music is a complex domain which requires a certain degree of technical and artistic knowledge and we are counting on your willingness to do some background reading before asking for help.  More on the "asking for help" topic in the Support and Communication Rules FAQ below.

Here are our suggestions for those seeking to understand the theory behind this project:

  • Chapter Four of the JazzAlex's Ph.D. thesis has a complete description of the distributed music model we’re working on here.
  • Chapter Five describes the artistic challenges caused by audio latency between performers.
  • Our IEEE-Access publication (mainly Section IV) describes the current state of the art and Soundjack in particular.


  • The Tech Tutorial tab is intended to be both a "quick start" and refresher resource.

  • We strongly recommend that at a minimum the “technical lead” member of your group is deeply familiar with the written and video material on that page, as well as this FAQ.  You, and we, should be able to count on that person to resolve typical set-up and operational issues. 


  • In some cases users do not receive the registration email. Please check your SPAM folder first -- if it's not there it probably wasn't sent. In that case, please send email to This email address is being protected from spambots. You need JavaScript enabled to view it.  He will manually enable your account.  Please be patient, this process can take hours or days depending on his workload.  He will inform you by email when your account is active.


  • Soundjack may return the error "This is an application of a non-verified developer” rather than running the first time you open it. In this case, right-click (hit ctrl key while clicking) the application file and start Soundjack via "open" from the drop-down menu. You can run it normally with the usual left-click from then on.

  • Problem: my input/output devices are accepted by Stage, but sound is neither captured nor played back, the level meter does not move and there is no sound (and in the case of video, the app completely crashes).

    Answer: recent versions of OSX require an additional security step.  In this case:

    - make sure that the Soundjack app is in the Applications folder
    - run the OSX System Preferences app
    - navigate to Security & Privacy
    - enable Soundjack to use the needed devices (Microphone and/or Camera respectively).

    If Soundjack does not appear in the list of apps there, or in case of other issues, start SJ via Terminal. Open the terminal and a command something like this.  Note: The Soundjack app-name is formatted as " SJC2nnnnn.app " (SJC200616.app at the time of writing this part of the FAQ).

        /Applications/[ current soundjack app ]/Contents/MacOS/soundjack

    OSX should then prompt you to enable the Microphone and/or Camera.


  • The ASIO buffersize is often not set automatically. Please make sure to set them in the respective configuration panel. It opens up every time the card is initialized.  Note that Soundjack currently requires a 48000 sample rate (higher rates are in process).

  • Some configurations experience performance issues and in turn cannot establish localhost connections with a network buffer of 128 samples and a jitter buffer of one packet. Open Windows Task Manager, select the "details" tab, right click on the soundjack.exe process and switch from "normal" to "realtime" scheduling, which often drastically increases performance.

  • ASIO4ALL is an alternative to a native ASIO driver, however proper functionality is not assured and we only provide limited support.  Here are some tips if your account doesn’t turn green and you are using ASIO4ALL drivers.

    - Locate the configuration panel. Once you have an ASIO4ALL-configured session running, click on the "play" symbol in the dock (containing icons of running applications) to access the settings dialogue. 
    - Adjust input and output settings.

    Also note that ASIO4ALL does not allow more than one audio client at the same time - this includes system sounds, DAWs, etc. - and thus the best choice is likely to be a native ASIO driver.


  • Use the script in the main folder to run the SJC – e.g. ./SJC200616.sh

  • The current download may not contain all the required libs. Use "sudo apt-get instal <name-of-the-lib>" to install the ones your system tells you are missing. If “apt-get” is not available, try the “yum” command instead.


  • Video is still in beta status: It works fine for OSX. It may or may not on Linux and Windows depending on your hardware and OS. Please try it and share what happens on your machine with This email address is being protected from spambots. You need JavaScript enabled to view it. (please include info about your OS).  

  • Even if video works it could lead to crashes. In this case please switch the video off and try to determine if the video is the actual crash cause.

  • Additional tips: don't use the Interleaved option at all and use the JPEG codec to conserve bandwidth.

Audio configuration

  • The channel selector below the loopback fader is in beta mode and has not been extensively tested yet – we encourage you to use either the 1, 2, 4 ,8 or 16 channel bundles at this time.  Note that input and output channel counts are presumed to be the same at this time. 

  • Integrated audio devices work very well on OSX and reasonably well on Linux.  But they often cause performance issues on Windows.  We recommend an external USB-Soundcard (e.g. Focusrite Scarlett Solo or Behringer U-Phoria) for Windows users.

  • Almost any new audio gear such as guitar processors etc. can be used as a sound card. However, most of them lead to performance issues. Please send email to This email address is being protected from spambots. You need JavaScript enabled to view it. regarding your experience so we can create a list of working devices.

  • You can reliably run SJC with multiple audio applications at the same time on OSX without an audio server (see below). This is less likely with Windows (especially with ASIO4ALL) and thus you may be limited to processing the sound of only one application at a time without an error message. 

  • Other apps might provide VST plugins in order to connect these apps - Soundjack currently doesn't.

Audio server

  • You have to use an audio server and use it as the input and output device driver if you want to run more than one audio application on your machine and want to route signals between them.

  • Possible audio servers are JACK (http://www.jackaudio.org), Blackhole (https://github.com/ExistentialAudio/BlackHole), and Loopback (https://rogueamoeba.com/loopback/).  Our current preference is JACK.

  • Configuration:

    The general idea is to use the audio server between applications and route between them within the audio server.  For example:

    - Select the audio-server as the input and output device in Soundjack
    - Do the same in your DAW.
    - Route between Soundjack and the DAW within the audio-server connection panel

    Make sure that everything is adjusted to 48 kHz sample rate when using an audio server.  Also make sure that audio channels and audio buffer (frame-size) configurations match for every connected audio application. Otherwise you will have strange effects.


  • Soundjack is primarily a point-to-point (p2p) streaming system and thus network load and latency between each pair of users will vary depending on the audio settings they apply.  This also means that users with limited bandwidth may find it hard to participate as the number of performers grows.  Your sessions do not generate any network traffic on (and are not constrained by) our servers in this configuration.

    We also provide a software server (where each player connects to the server, rather than to each other) which is currently in beta and available under the name "Mix Server Nürnberg.”

    We also provide a high-performance hardware server (Mix Server Köthen) but it's currently restricted to certain users.

  • We strongly recommend that you use a wired connection to your network rather than WIFI. This will result in the most stable and low-latency audio streaming.  You will encounter a significant number of audio dropouts with WIFI, which can only be addressed with higher buffers and in turn higher latencies. Ideally turn off WIFI and explicitly choose the wired endpoint from the list of available network interfaces on your computer.

  • Soundjack’s default sample-buffer/network-buffer (512) and jitter-buffer (4) settings prohibit distant rhythmical interaction – they result in 40ms of latency within your computer.  You must reduce these buffer settings and determine whether your audio gear and network connection can handle them (deliver audio without crackling or distortion).  Finding these optimal settings will vary between performers. The goal is to use 128 or even 64 samples to the sample-buffer, 128 samples to the network-buffer and a jitter-buffer of 1.  This should yield about 3ms latency when testing on localhost. Note: it’s prudent to set the jitter-buffer to 2 during performances for stability. 

  • The final latency is determined by three parameters: Audio buffer and network buffer on the sending side (basically the size of the packet – in the SJC settings on the left) and the jitter buffer on the receiving side (the amount of packets stored before playback – green or red-flashing box within the user list on each entry).

  • The lower the network and jitter buffer, the higher the risk of the audio stream being disturbed by other Internet traffic (cross traffic). As a consequence make sure that other users of your LAN (any device such as notebooks, smartphones etc. behind your router) reduce Internet traffic to a minimum (ideally zero). This effect has a lower impact the more upload bandwidth is available.

Port forwarding


  • Soundjack requires that you forward UDP port 50050 to your computer (and ensure that TCP port 1234 is not blocked) if you are on a local network (LAN) that uses network address translation (NAT).  Almost all local networks do that these days.  Soundjack will not be able to connect with anybody outside your network if you skip this step.  Here are some options if you don't know how to do this:

    - Search on   port forward <the make/model of your router>   for instructions
    - Have a look at the Video4 tutorial on our Tech Tutorial page for an example (which will likely not correspond exactly to what you see on your router unless you happen to be using the same router that Alex was using when he made the video)
    - Ask a friend who is a online-game enthusiast to help you (gamers have to do this a lot)

  • Soundjack provides a very helpful tool to check the port-forwarding configuration of your router. The behavior of your router’s NAT (network address translation) is displayed as a three-digit number in brackets behind the UDP-Port2-Info at the "i"-symbol tooltip.


    The first number indicates whether the default port is being changed from 50050 to anything else

    "1" – NAT preserves the outbound port
    "3" - NAT changes the outbound port.

    The second number indicates port filtering

    "1" or "3" - the outbound port can be reached by an external sender
    "8" – Soundjack assumes that the sender's address has previously been used as the destination

    The third number (port mapping) relates to the first number

    "1" – port remains the same for additional connections
    "8" – port changes for each new connection

    Thus "111" can be considered a completely open NAT while "388" is the most restrictive type. However, if one peer of a bidirectional connection is "388" and the other is "111" it is possible to establish a link because the "111" will know the outbound port of the "388" NAT and will in turn use it as the destination (via port bending). Thus, connectivity always has to take both peers' behavior into consideration. 

  • If "TRYING" or "ONE-WAY" is displayed after the play (connect) button, the connection is failing and you need to review your UDP port forwarding (port 50050) settings. Please follow the instructions in the “NAT-Router Connection / Port Forwarding” video on the TECH TUTORIAL page.  

    We’ve occasionally encountered routers that don't forward packets although they claim to. Please report this – we are willing to verify.

    Also make sure to either switch off any software firewall or generate an exception rule for it.

  • If you have applied your forwarding correctly but still Soundjack fails detecting the open port 50050 it is very likely that your Internet endpoint connection does not provide IPv4. Soundjack will not work for you until we have implemented IPv6 endpoint support within Soundjack (it’s scheduled on TODO). 

  • It is possible to connect machines on a LAN, however Soundjack will only automatically pick the LAN IP if both peers share the same public IP.  If they don’t, enable the VPN call in the parameter settings on the left and Soundjack will use the private IP. 

  • We support dedicated rehearsing spaces / rooms for a specific group of people. Simply create your own room at the right of the lock symbol and pick a password for it. Soundjack will assign a number for this room and it will show up in the list of available private rooms (also in the dropdown list beside the lock symbol). Inform your friends about the number and the password so they can pick this room. After entering the room, players will only see others in the same room.

  • If you see message "SJ-Server down – nothing will work" make sure that you haven't blocked TCP port 1234 and that your browser supports websockets (try other browsers). If neither of these clear the error, the server is indeed down.

  • If you launched the app and it says "FAILED CREATING WEBSOCKET" you either have another instance of the application running (in which case, shut it down) or your OS does not support websockets. In this case you manually have to enable websocket support within your OS.

Support and communication rules

  • If you cannot get Soundjack to work, please contact the main author: This email address is being protected from spambots. You need JavaScript enabled to view it. 

    If he does not respond please don't take it personally.  Most likely the answer to your question can be found in the Tech Tutorial or this FAQ.  Also respect proper language in any case. Users with a disrespectful, reproachful, racist or aggressive attitude will be warned once and banned from the system if that warning is ignored. 

  • We in the Soundjack community share a rather informal style – we typically salute each other by our forename.

  • Long-term Soundjack User and Facebook Group Admin JamTuner often gives support via the Shoutbout, which is much appreciated – main developer Jazzalex does as well assuming time and leisure.  Please note that is impossible to answer every question. Please read the FAQ before asking.

  • If you report of a bug, a crash, or other forms of disfunction please provide as much information as possible (under which conditions, after which amount of time, after application of which parameters etc.). A single info such as "it crashes" is completely useless. Ideally provide a short screen cast of what is happening on your machine as this is the most effective way to figure to actual problem.

  • If we cannot find a solution to a verifiable bug we may ask to access your machine via Teamviewer (http://www.teamviewer.com) or Anydesk (http://www.anydesk.com). This is our last resort.  If you are not comfortable with that approach we will have to leave up to you to address the problem.


Chat (time zone: UTC)

Ross Byron - 23:21

plesed to meet you

Ross Byron - 23:21

motu 828 ill sync them up sometime

Bernd Keul 2 - 20:51

bpm is 90

Bernd Keul 2 - 20:51

Ross Byron - i use blackhole on the sending side and a combi of blackhole and Motu on the recieving side, i managed to sync ableton to the click on track 7-8 with the max for live device beatseeker

QuinnPatrickAnkrum - 20:35

Woo hoo Dana Zenobi!!

Ross Byron - 19:58

berndkeul - got it worked good

Ross Byron - 19:57


Ross Byron - 19:55

useing soundflower

Ross Byron - 19:55

i have all 8 chs indepent going into abelton live

Ross Byron - 19:51

going for 8

Ross Byron - 19:43

what your bpm?

Ross Byron - 19:35

am listening in 2 channels to you berndk

Ross Byron - 19:32

cool am in the old school site

berndkeul - 15:42

... on the Bernd Keul 2 acount ...

berndkeul - 15:42

i´m sending 8 channel percussion ( loops...) , is anybody here with multichannel interface and speakers , who wants to give it a try ... ?

deckypoo1 - 04:42

hey there. can anyone help me install this onto my raspberry pi? i just dowloaded the linux software... now what

Hector_Valdivia - 23:05

This website has blocked my IPaddress for some reason. I am able to login via my data plan on my phone or using a VPN...How do I get unblocked?

handbellguy - 22:31

I am on a fmb as well.

deckypoo1 - 22:31

just the micro sd lol

deckypoo1 - 22:30

yeah... i bought a bundle that didn't include the adapter.

handbellguy - 22:27

@derek many micro cards come with the adapter. Also, willing to test.

deckypoo1 - 22:21

so I'm at a standstill. thought I would explore the soundjack on my mac

deckypoo1 - 22:21

was setting up my raspberry pi FMB but don't have an adaptor for my micro sd to download the Argon OS...

deckypoo1 - 22:20

hello! it's derek chester here

OldPro92 - 21:19

When Soundjack is open, nothing appears. All I get is the icon in the upper left corner.

OldPro92 - 17:35

After moving SJC to the Applications Folder, and removing Security problems, I was informed that it couldn't open the file. Anyone have a workaround for this?

OldPro92 - 17:21

Never mind - they just don't let you rename it.

OldPro92 - 17:03

I'm on a Mac OS 10.14.6. The system can't open the dmg file, says it doesn't recognize it. Any solutions?

sopteach - 00:01

Cascade: is your soundjack app open on your computer? You need the app open and the webpage on stage

cascadevoiceacademy - 21:39

I keep getting anerror message :connection issue between stage and sjc. Any thoughts?

Cunha - 21:29

any one to test?

Cunha - 21:28

someone here can get a call with me to test the system?

WendyLJones - 21:13

Got i

WendyLJones - 21:05

My FMB won't connect. Got taken to the "new site" a few times before I could get it here. First time since I hooked up on SJ that this won't work

Hector_Valdivia - 20:35

Hi Matthew Z! I tried to use your link you sent, but it does not connect RU there?

ChrisRogan - 14:53

I've an older OS system than 10.13. Anyone had any success with El Capitan? Thanks

cascadevoiceacademy - 21:22

Hey! can anyone test connect withm e>

alyssatoepfer - 19:45

I'll test connect with you @JuliaScozz

JuliaScozz - 19:13

anyone wanna test connect?

JuliaScozz - 18:34

We are also stuck on "trying?" suggestion for fix?


We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.