JackTrip Desktop App on Raspberry Pi

I took a stab at trying the latest JackTrip Desktop App v2.4.1 on a Raspberry Pi 4b. I installed the latest 64-bit Raspberry Pi OS (based on Debian Bookworm). We don’t distribute builds for arm64 yet, although we likely will start in early 2025 after GitHub starts supporting arm64 runners for public / open source repositories. Building JackTrip from source however was pretty easy. I just followed these instructions and didn’t run into any problems. Here is a pre-built version for anyone else who may want to try it.

https://files.jacktrip.org/binaries/arm64/JackTrip-20241213-Linux-arm64-binary.zip

The good news is that it generally works great, at least when using ALSA audio with a Hifiberry DAC+ ADC Pro board.

I re-ran some round-trip latency tests as described in this topic, and I guess some bad news is that the numbers were noticeably worse versus an Analog Bridge device.

128
JACK loopback using Analog Bridge: 6ms
monitor loop using Raspberry Pi OS: 15ms
studio loop using Analog Bridge image: 14ms
studio loop using Raspberry Pi OS: 21ms

64
JACK loopback using Analog Bridge: 4ms
studio loop on Analog Bridge: 10ms
monitor loop using Raspberry Pi OS: 7ms
studio loop using Raspberry Pi OS: 15ms

It didn’t seem to make much difference, but I added this line to /etc/security/limits.conf and rebooted to ensure that JackTrip was able to create realtime priority threads.

@audio - rtprio 95

I also tried testing an AudioBox Go but could not seem to get it to work properly with buffer sizes of less than 256.

I was going to try comparing ALSA to Pipewire/JACK, but apparently this is broken on Raspberry Pi OS.

Probably best to try a recent Ubuntu or Fedora next, since I suspect they would not have these problems.

I was able to get things working on Ubuntu 24.04. I had to followed these instructions to get the Hifiberry card working properly.

Unfortunately I’m getting the same same measurements when using ALSA.

I ran into the same problem with pipewire-jack package, except was able to install it after a full apt upgrade. It seems to still not work properly, though, so I installed JACK proper and got these measurements which are more in line with the Analog Bridge:

128
JACK loopback using Analog Bridge: 6ms
JACK loopback using Ubuntu 24.04 + JACK: 6ms
monitor loop using Ubuntu 24.04 + JACK: 9ms
studio loop using Analog Bridge image: 14ms
studio loop using Ubuntu 24.04 + JACK: 14ms

64
JACK loopback using Analog Bridge: 4ms
JACK loopback using Ubuntu 24.04 + JACK: 3ms
monitor loop using Ubuntu 24.04 + JACK: 5ms
studio loop on Analog Bridge: 10ms
studio loop using Ubuntu 24.04 + JACK: 9ms

I would imagine just installing JACK on Raspberry Pi OS would produce the same results…

I’m still not able to get USB audio devices to work properly. It seems like Pulse is taking over so that they are not available in ALSA, and the pipewire jack compatibility is completely broken.

My Fedora laptop uses pipewire and works well with USB audio devices, jack compatibility, etc. That may still be the best way to go. I just tried Fedora Workstation 41 but would not recommend it. It boots but takes forever and it continuously just freezes up (could be because I don’t have any cooling). Audio setup seems to be much better out of the box (no Pulse) but I wasn’t able to get the Hifiberry HAT working. I tried following these instructions no but it doesn’t show up. I personally prefer Fedora, but it’s probably best to just stick with Ubuntu or Raspberry Pi OS on these devices.