Sunday, July 26, 2009

Jack for Mac

So, in previous articles I've written about Soundflower and how I was able to use it to route audio between Mac applications. Well, it appears that Soundflower is, if not dead, at least on hiatus; the developers are not answering bug reports, and the preliminary reporting says that it is not compatible with Snow Leopard. So, the alternatives are to fix it, or find something else to use. I might still be able to scrape together enough time to see if I can get the thing compiling and dig into what is wrong with it, but with full-time work and four kids, that is far from guaranteed. So I did some spelunking and came across Jack.

Jack is a port of a Linux sound routing tool to Mac OS X. As such, it is a bit more command-line oriented. Instead of being a CoreAudio driver, it interfaces with a CoreAudio driver. Soundflower is a simple bus, of two or sixteen channels; Jack is much more configurable, allowing you to route audio in all kinds of ways, even generating feedback loops if you care to.

It's also a little more complicated to configure. The routing user interface is not polished at all; in fact it is pretty far from intuitive. The GUI for editing audio routing is in desperate need of a patch bay-like editor, that works the way Apple's Audio MIDI Setup editor lets you draw wires between MIDI devices. But after a little head-scratching I'm pleased to report that it worked, and it worked really well, using a very small amount of CPU time. And it seems to have more options: I have not tried them yet, but there are plug-in adapters to let you route audio from inside Logic or other tools.

Jack for MacOS X is here:

I will in all likelihood be posting more about Jack in the very near future.

No comments: