Online Jam Session wih JackTrip

How it works
JackTrip with its client-server architecture establishes an audio connection between one server (here on dyn.e-reuter.com) and 1..n clients. You need one Jacktrip session running on each client. On the server you have to run a separate Jacktrip session for each connected client. JackTrip uses UDP as the protocol so low latencies are possible.
The JackControl app manages the audio configuration both on the server and on all clients:



It´s from the CCRMA
The Stanford Center for Computer Research in Music and Acoustics (CCRMA) is a multi-disciplinary facility where composers and researchers work together using computer-based technology both as an artistic medium and as a research tool.

See here, here , here , here , or here for more information.


Installation Guide:


1. Install ASIO4ALL Driver
ASIO4ALL is an audio driver that makes it easy to use Jack on Windows. Install this before installing Jack.
Download ASIO4ALL from here: https://ccrma.stanford.edu/software/jacktrip/windows/ASIO4ALL_2_13_English.exe and install it (use default settings).

Note: If your installed sound card already provides an ASIO driver, you can skip this installation step.

2. Install JackControl
JackControl is the app to configure the audio sound cards on the server and clients.
Download JackControl from here: https://github.com/jackaudio/jackaudio.github.com/releases/download/1.9.11/Jack_v1.9.11_64_setup.exe and install it (use default settings).

3. Install JackTrip
JackTrip is the app which establishes the connection between the server and its clients and is used as the bridge to the JackControl apps.
Download Jacktrip from here: https://ccrma.stanford.edu/software/jacktrip/windows/jacktripInstaller.exe and install it (use default settings).

4. Download client installation links
Download my client installation scripts from here: Jack install clients.zip and copy the "Jack install client" folder to a local destination.

Here we go!
a) Open the "Jack install client" folder and run one of the cmd files e.g. "Jack install bass.cmd" by double click.




b) Run Jack by clicking one of the entries in the start menu, e.g. Jack Git 2ch 256 fps. 256 fps gives the lowest latency, 1024 fps the highest. Select the lowest possible setting.
This article here explains why high latency is the main problem with online jam. Once digitized, the data flows through the line at the speed of light (300000 km/s). What looks very fast at first glance means further delays of 1 ms per 300 km distance. This is not a problem within one region, but with an online jam between Europe and America or even Australia, additional latencies between 20 ms and 70 ms are quickly added, which is actually only passable for orchestras or choral music.



c) Press the Setup button:



Select portaudio as the driver and the previously installed ASIO4All driver (step 1) as the interface (respectively the ASIO driver from your sound card).
(All parties must have the same settings for frames/period and sampling rate.)

c) Press the start button (sometimes it takes several tries):



d) Right click on the ASIO4ALL icon in the taskbar:



Select your audio device and set the same value for samples (here 128) for the ASIO buffer size and the in and out latency compensation:



Press the stop and then the start button (sometimes it takes several tries) to apply the new settings:



e) JackTrip will automatically be started:



The online jam session can begin as soon as the Jacktrip server session (here dyn.e-reuter.com) has started and the connection is established.