The QT Jack Control application is among the most feature-rich applications for managing Jack connections there is. However, it doesn’t make for a very attractive patchbay; outputs are always on the left, and inputs are always on the right, and each program that has both will show up on both sides.
Patchage can be used in place of the QT Jack Control application; this program will allow you to make connections between jack programs, and keep all inputs and outputs grouped with the same program.
Now, the first thing you’ll notice about this program is that it’s not very clean on startup. This can be corrected (somewhat) with the “Arrange” option in the “View” menu. The program will place eveything in a vertical line, showing connected items horizontally from one another.
Before I go further, perhaps it’s a good time to explain the colors you see in the program. At this point, I have explained about digital audio, and I have described MIDI. The three colors covers the connection types of the system and programs.
Blue indicates that the connection made will be one for digital audio. These connections are going to be the bulk of any recording project, because, ultimately, this is what we are recording and generating, regardless of whether it’s being recorded initially, or generated through synthesizers and samplers.
Red is specific to Jack-controlled MIDI. Whether these appear in Patchage depends on the midi driver you chose in the Jack settings dialog in the Jack Control application. If you chose “raw” or “seq,” then the red entries will appear. If you’re using Jack 1, Patchage will give the MIDI devices real names, and attach them to the correct programs. However, for whatever reason, Jack 2 seems to just call everything “midi_capture” or “midi_playback” and give them separate numbers, all attached to the “system” boxes. I hope that gets fixed, but for now, that’s why you see them here in the example.
So, we have blue=audio, while red=midi, but what is green? Well, not everybody chooses to enable Jack MIDI support, instead falling back to the default ALSA support. Green is also MIDI, but instead of Jack handling MIDI, ALSA handles the connections instead.
Patchage’s main advantage is that it encloses inputs and outputs for a single program inside a single box, like the image on the left. This makes it easier to see in exactly what order audio is being filtered, as the program can be maneuvered between the lines to show an entire signal chain. For example, when you connect the microphones to Jack Rack, which then connects to Jamin, and then passes on to the speakers, you get a signal chain that looks like this when arranged:
Some programs cannot be joined in this way by default; usually, they possess a large number of inputs and outputs that are often directed between themselves; DAWs like Ardour and Rosegarden are prime examples. You’ll also notice that the audio interface boxes’ inputs and outputs are isolated in the same way.
As you might notice from the image on the left, the connections used by the program, when they loop around, will cover the text and buttons of the inputs and outputs in the program. this is not as bad with the occasional looparound, but when a large number of looparound connections covers a single set of inputs or outputs, the connections can completely cover the item, preventing you from being able to see what you’re doing.
As an example, the image on the left shows what would happen if Ardour was set as a single box; in this case, I just placed them side by side in the same way. Notice how the mass of lines covers up the inputs for lines 1 and 2.
This means that you’d have to be careful when attempting to connect those inputs, as you would have to click between the connections to actually select the inputs.
Moreover, following the connections themselves become difficult, as they are of a close match to the color of the inputs and outputs they cover. Because of these issues, it is better to have separate inputs and outputs for the larger programs that need them; organizing them can become much simpler and cleaner, like the following:
This is not necessary for single-purpose programs such as Jack Rack and Jamin, because what goes in and comes out do not interact, so it functions as a simple module between two bigger programs. However, if you need them to be split (such as in the case of the extreme Jack Rack example above), then right-clicking the box and selecting “Split” will do so. Right-clicking on either of the split boxes (except for the massive programs that are naturally split) and clicking “Join” will put the two boxes back together.
Patchage is extremely flexible in placement. You can place the boxes wherever you want, and you can isolate specific components in different areas of the black area, which is huge enough by default that you can scroll about in it. You can also zoom in and out in order to see the whole area, like so:
As you can see, compared to the above examples, they are downright tiny in this picture; that is how big the placement field is. This is useful if you want to keep MIDI connections in one area and audio connections in another, or if you truly have a monstrous chain that will need this much real-estate just to keep organized.
Maneuvering the program boxes around is pretty simple; all you need to do is click on the gray area and drag. With some time, this automatically-organized layout…
If you wish to move a group of boxes around together, you can drag a box around the group you wish to move, or you can hold the control key while clicking each box. When the boxes are selected for moving, their borders will change from a solid gray line to a “marching ants” outline, like this:
Now, so far, everything has been connected already. However, how do they connect?
In Patchage, connections are made by dragging the mouse from the desired input. As the mouse moves, you will notice a line following the mouse, which is now shaped like a plus sign:
Another way is to click on the input or output, and then click on the connection’s destination. After the source is clicked, it will turn a bright red (as opposed to the deep red of the Jack MIDI items), and return to its original color when the connection is made, or once you click anywhere else (indicating that you wish to cancel).
As seen above, the color of the lines will match the color of their endpoints. You cannot connect an input of one color with the output of another color. Even though both red and green are MIDI sockets, they still won’t connect, since they are being handled by two entirely different programs.
Now, suppose we have a really tangled collection of connections. How can we follow the mess?Now, this is obviously a tangled mess, if I ever saw one. However, all these connections actually accomplish things (Well, except for the Rakarrack MIDI connections; those are pointless in this case). So, how to tell what which input is connected to what outputs?
The process is simple, just hold the mouse over one of the jacks (input or output), and all connections associated with that jack will turn bright red:As you can see here, Line 1/out 1, Line 2/out 1, Line3/out 1, Line4/out 1, and Microphone/out 1 are all connected to master/in 1, meaning that the left signals for all the recording tracks in Ardour, output into the master track in Ardour. Now… where does the master track go?Ahh, so it goes straight into the system playback (headphones). However, I’ve just noticed that it’s not the only thing going to the headphones. What else is connecting to them?
I see now, the left record monitor from Rosegarden, as well as the left master, auditioner, and click signals from Ardour are all getting sent to the heaphones. And I hope you can see the benefit of this as well.
One more thing: these connections are in no way limited only to Patchage; if you were to open the connections window in the QT Jack Control, you would see the exact same connections, but in that interface, instead:
And this is only the audio portion of the connections; the Jack MIDI connections are in the other tab, and since I disabled display of Alsa MIDI display, the ALSA tab is not showing here. Yes, suddenly, Patchage seems to be the better interface for more extensive arrangements. I agree.
This program has a toolbar, as such:
This toolbar simply shows the latency buffer, which helps reduce dropouts (the higher the number, the less likely that Xruns will occur), a dropout counter, as well as scaling icons; the first will return the field back to its original magnifaction, and the other will fit it all in the window.
Well, hopefully, this tool will assist you in organizing much larger collections of sound software and hardware. While not necessary for voiceover, it’s essential to understand how to make lots of connections when composing music consisting of large numbers of tracks, and making use of audio hardware, synthesizers, samplers, and effects plugins.
What a way to make noise, wouldn’t you agree?