JackTrip: Record Audio TOGETHER Across Town or Across The World!

in #linuxlast year

This post is a summarized compliment to a video that goes into more detail:

Sending Audio Across A Network(including the Internet):

This was a subject I only briefly touched on in the first part of my on-going series: The Guide To Linux Music & Audio Production.
However, I only touched on the Pulseaudio method, and specifically for Linux.

JackTrip WORKS ON Linux, MacOS, & Windows!
It is a 100% Free & Open-Source Software.

It is most widely used on Linux because it works with the JACK Audio Connection Kit, a high performance audio system also developed specifically for audio production on Linux.
The JACK Audio Connection Kit is a low-latency real-time server that allows audio to be sent between sources & sinks which can be anything from apps to sound-cards & devices, or machines and separate studios.
It can also synchronize these separate nodes to play and record in unison.

Because JACK is useful & open-source it has been ported to MacOS & Windows, and so has JackTrip.

JackTrip Is Two Things!

It can be confusing because they are both branded the same.
I'll be providing links to individual relevant pages at the bottom of the article.

JackTrip-AppVsTech.png

  1. An open-source service & app for sending audio over network protocols. Sometimes referred to as JackTrip Core.

  2. A company that provides tiered Virtual Studio services, both free & paid.

They BOTH use the open-source JackTrip Core technology.

In my testing I have only used it to connect the two studios that are in my house.
It's worth noting that if you're using JackTrip Core outside of your local network the possibility of latency due to various factors such as network-jitter become more likely. Port-forwarding is probably needed for the ports specified in JackTrip's settings to get the best results.

Also I have no experience using the JackTrip Virtual Studio service, but it likely has precautions taken to optimize latency since it's a paid service. Even the free option likely has this to maximize the chances of people

The JackTrip Core Open-Source App (jacktrip.github.io/jacktrip)

image.png
This site contains links/instructions for installing the JackTrip open-source app on your operating system, and a manual for using it.
On Linux there are two packages:

 jacktrip
 jacktrip-gui

The GUI is the visual component that makes it easy to use, and without that you'll have to enter commands into a terminal manually.
This is the GUI:

Every computer participating needs to have JackTrip Core installed.
The "main" computer should start the service first, and this will be the Server.
If it's just two computers the P2P(peer to peer) Server should be selected, or if you're planning on recording with many computers the Hub Server should be selected.
You can also select the number of input/output or send & receive channels.

All of the client computers will need the IP address of the server, and should selected the Hub or Peer To Peer options.
Once you hit connect you'll have the IP address of the corresponding client/server/hub appear in your JACK connections list.

In this image JACK & JackTrip are running on my laptop in the 2nd studio.
My Scarlett 2i4 on the left is connected to two SINK's:

  • 192.168.1.171(JackTrip): My streaming/editing machine in the other studio.
  • Simple Screen Recorder: The app that's recording the screen & capturing audio.
    JACK-Graph-image.png
There are several tabs with options in JackTrip:
  • Basic Options
    • Connection modes, send/receive channels,
  • Advanced Options
    • Detailed parameters such as bit-resolution, port number, realtime priority, and IO statistics.
  • Audio Backend
    • Where you set the options for the JACK service itself
    • Has an option for RtAudio backend, but I don't have that backend.
  • Jitter Buffer
    • Options for mitigating network-jitter.
  • Plugins
    • Effects that can be set for send/receive such as:
    • 2 types of reverb, compressor, and a limiter.

image.png

The Company (jacktrip.com)

image.png

The JackTrip company's Virtual Studio service is both audio & video, and can be used directly through their website.
They also provide a desktop application, but I couldn't get it to work for me. It required my JackTrip.com account, but after it connected it continued to ask me for my account so I couldn't get it to do anything at all.

image.png

I featured the company's website in my video, but the open-source software was the focus.
On their Technology page they give in-depth explanations of latency, and the different types of latency incurred from hardware, software, and networks. It also weighs pros & cons of the peer 2 peer or hub & spoke network models.

The Support page is even more interesting because they provide downloads and links for running their software on a Raspberry-Pi, and details for building an Analogue Bridge using the Raspberry-Pi.
A JackTrip branded Analogue Bridge can also be purchased online, but not directly from the site. I found them on Amazon for $250.
These are devices that I assume run the software, but also act as the interface for your audio hardware.

The Links:

The Open-Source App Site

Guides To Building Your Own Devices & Other Useful Information