Audio routers are patching writ large.
Audio routers are “virtual cables” that route audio out of limited parochial software into differently limited parochial software, giving you flexibility at the cost of confusion and labour. Using audio effects software to apply effects audio synthesis software doesn’t sound like rocket science, but turns out to be tedious.
There are 5 that I am aware of, with different reliability, licensing, and platform support.
- jack (open source, Windows, OSX, Linux, powerful but unfriendly)
- loopback (commercial, OSX)
- soundflower (free, OSX, flakey)
- VB Audio Cables (donationware windows)
- Audiobus, the iOs router, which I have no use for at present.
Breaking it down by platform….
Jack on OSX has its only working version hidden deep in the github bug reports as opposed to the normal download page, indicating that development on this project has partially stalled. Soundflower is inflexible and periodically unmaintained despite intermittent commercial backing. Fragility hell in these free options is avoided somewhat by loopback, a rather expensive commercial competitor. Maybe owners Rogue Amoeba will use that funding to keep maintaining their product, having fucked up soundflower on their own watch? But should I reward that behaviour by buying a license?
Apparently I did.
Here is my config:
How to create virtual ports for bidirectional patching: Jack.
beginner’s guide to jack via a DAW (Ardour)
internal routing with JACK explains why you can’t make it do what you expect with routing sub-buses to different apps - you need lotsa virtual channels:
With a basic implementation of JACK now set up, we can begin to tweak JACK to our needs—internal routing. For those of you with larger 8-channel interfaces, you probably have noticed a slight problem with JACK: you do not have all eight microphone inputs available anymore! This is because we need to tell JACK how many inputs we want (both in and out).
For OS X users, simply adjust the Virtual I/O settings under Preferences until your hearts content and you should be good to go. For Linux and PC users however, things are not so easy. While the Channel I/O option sounds like a perfect match, it really does nothing most of the time. Instead we need to edit an .INI file.
- Close down JACK, as well as any connected apps.
- Go to where you installed JACK (most likely C:Program Files(x86)Jack).
- In the 32 or 64 bit folder (depending on what version you are using) there is a file called JackRouter.ini
- Open JackRouter.ini with Notepad, and change the input and output values to however many channels you want. Presto!
- Restart Jack Control, enter your DAW, and you should now have a multitude of inputs and outputs at your disposal.
perhaps this is /etc/jackdrc and ~/.jackdrc on ubuntu?
Ubuntu recommends using a GUI for config then persisting to disk.
Jack seems to work on windows. But there is also… VB Audio Cables seems to be a viable workalike for windows.