One lucky soul will have the task of taking the output of the Jamulus session and streaming it to the Internet. This requires a little technical wizardry. If you are that lucky soul, welcome!
This section builds on the previous section about routing. You will definitely need to route the audio from Jamulus to the streaming software at the very least, and possibly elsewhere as well.
I have made a series of videos showing how I set up my computer at home to combine the Jamulus audio with Zoom video to create a livestream performance:
Conducting and Engineering
By “conducting”, I mean sending some kind of audio track into Jamulus to help participants stay in time and on pitch. This is not always needed, depending on the music, but for some pieces can be useful. It could be a drone, metronome, repeated pitch, or even a full audio track of the piece to be performed. Of course, the latency in the system will prevent the results from lining up properly. But even if the piece being performed is specifically designed to incorporate latency, a guide track might be appropriate.
Video, in the form of a concurrent Zoom call, can also be used for conducting, possibly in conjunction with a pitch or tempo track. For instance, some pieces may have a constant tempo, but rely on a conductor to cue transitions from one section to another.
The other important function is setting the final mix. It is hard to get the mix right while also singing, so having a separate recording engineer is desirable. Additionally, when singing in Jamulus, participants often want to mute themselves to avoid an annoying echo, but they can’t do so if they are also recording the Jamulus output. Also, the engineer can adjust levels during the performance to emphasize solos and so on.
The Separate Engineering Computer
I originally thought I could run two Jamulus clients on the same machine, both routing through the same DAW: one for the performing role and one for the engineering role. I got it to work after a fashion, but there were problems. When I asked the Jamulus brain trust, I was told that multiple clients on the same machine are not supported, and I should not try to do it.
So I switched to using two separate computers, and found that it's a much better solution. On my laptop, I have a standard Jamulus setup, with my audio interface and microphone, as well as Zoom and my webcam. My desktop is the engineering computer, running Jamulus, a DAW, and the streaming software. It is connected to Zoom to take in the feed, but has no camera itself.
One advantage of this setup is that, because the engineering computer is not connected to any input devices like a microphone or camera, it has all its computing power available for signal processing.
Also, because there's no microphone input, I don't need to go through the trouble of creating an aggregate device for routing purposes. All audio applications communicate solely through the BlackHole router.