View on GitHub JACK Logo - Home

JACK2 v1.9.18 release

Posted on by falkTX

A new version of JACK2 has just been released.
You can grab the latest release source code at https://github.com/jackaudio/jack2/releases and macOS/Windows installers at https://github.com/jackaudio/jack2-releases/releases.

This release focuses on 2 main things: adding zalsa internal client and fixing macOS builds in regards to DB/meta-data.
A few other fixes were made as contributed by developers.

With zalsa now part of JACK2, we are one more step closer to JACK1 feature parity.
Worth noting that this is purely the client, we still need to add the switches to be able to load internal clients directly from jackd startup command-line.
Will be interesting to attempt to make this zalsa client also behave as a “slave adapter” like done with ALSA audioadapter, coremidi and winmme drivers.
Something for a future release.

On macOS, please restart the JACK server after updating to 1.9.18.

The official changelog is:

  • Add zalsa_in/out as internal client (based on zita-a2j/j2a and jack1 code)
  • Fix jack_midi_dump deadlock on close after the jack server is restarted
  • Fix interrupt signal for linux futex waits
  • Fix usage of meta-data in official macOS builds (private DB errors)
  • Log error message when cleaning previous DB (macOS and Windows)

Now for those unaware of this whole “zalsa” thing…
This is basically zita-a2j/j2a by Fons Adriaensen repackaged as an internal client instead of being an external standalone tool.
JACK1 already added this a few years ago.
This zalsa version is slightly more up to date and with a few new fixes on top.

On supported systems, we can use it by running:

jack_load zalsa_out -i "-d hw:Mio"

This will activate the “Mio” soundcard as an output in the JACK graph.
You can use jack_unload zalsa_out to deactivate it, or alternatively control the start/stop purely in CLI with:

jack_load -w -a zalsa_out -i "-d hw:Mio"

Which will automatically unload the internal client after Ctrl+C or SIGTERM.

Worth noting that, since internal clients run in the JACK server process, they will log/print information on that process and not on the jack_load one.
So watch out for that if you need to debug anything.