Jamulus Tips
Here are a few things we’ve learned in using Jamulus and the Jamulus Server on Google Cloud Platform. Please submit your own tips through the Contact page, it helps everyone!
Audio Feedback. If you launch Jamulus and when you begin to speak or sing you hear a high-pitched whine, that’s feedback. I haven’t yet figured out why this happens, but I’ve learned that if I quit out of the app and restart it, sometimes a couple of times, that fixes it. Definitely use wired headphones when you’re using Jamulus; don’t use the computer’s speakers (that will generate feedback) or Bluetooth headphones (that will add latency) to get sound.
Server Address. Note that the first time you connect to Jamulus, you’ll need the External IP address of your Jamulus server (Jamulus will remember the address thereafter). If your server is halted (by the server administrator, eg. wanting it not to run all the time and run up costs) and restarted, that generates a new IP address, so all users will have to enter the new one when they Connect to your Jamulus server. In Google Cloud Platform, the External IP address is clearly marked in the Compute Engine dashboard.
Jamulus Parameters and Manual. Jamulus has a large number of parameters that you can modify if you wish. I generally use the defaults and auto-settings, but you may want to experiment with modifying the jitter buffer size, audio quality and other parameters. The official Jamulus manual is here.
Windows computers. I use a Mac; Windows machines may require additional configuration, particularly for the soundcard. More info here and here.
USB Microphones and Audio Interfaces. Some work well, some don’t. More info here.
Latency. Generally, users have found that with a “ping time” of less than 50ms, you won’t hear a delay when you’re singing online with others. You can tell what your ping time is by clicking Settings in the Jamulus control panel. If your (or your friends’) ping time is too high, make sure your WiFi is off, you’re connected via wired Ethernet, you’re using wired headphones, and nothing else is running on your computer.
Changing the mix. As you can see when you launch Jamulus, it gives you a “mixing board” that allows you to do various things to the sound that you hear coming from everyone in your group. The first thing to be sure of is which input is yours. Go to the View menu, select My Profile, and put your name or alias in there. (And get everyone else in your session to do the same, if they haven’t already.) Now you can see which slider/buttons affect which person’s input. Move the sliders up or down to hear more or less of specific people in your session. This can be helpful when one person has much better audio equipment than the others and comes through more loudly as a result.
Mute thyself! (sort of). I find Jamulus works best when I mute myself in the mix I’m hearing. Note that this is NOT done by clicking the Mute Myself button in the Jamulus control panel; that will mute you in everyone’s mix. On the Jamulus control panel, underneath the slider affecting your vocal (or instrument, or both), you’ll see buttons labeled GRP, MUTE, and SOLO. Click MUTE, and that will prevent your input from reaching your headphones. You can already hear yourself singing, so there’s no reason to “double” that (perhaps with a tiny delay as well) and send that from the Jamulus server to your ears. If you don’t know how to find your vocal on the Jamulus control panel, see the previous tip.
Using Jamulus with Zoom. If you’re on Zoom, don’t forget to mute yourselves there. You want Jamulus to receive, process, and send back your audio, not Zoom. Make sure you are using wired headphones with your computer, not the built-in mic/speaker and not Bluetooth headphones, and make sure you’re using wired Internet, not WiFi. Note that once you add video to the experience of singing together via Jamulus, you’re adding a new component that could have its own delay. Try it! (Note: If you know someone at Zoom, let us know through the Contact page, because we gotta get Zoom to buy whatever is the best platform for online singing and integrate it into Zoom.) Note that Zoom’s video and Jamulus’ audio can be routed to OBS to broadcast your session live, and although the video and audio will be synched, the delay between singing and livecast will be signficant, so your singers won’t be using the livecast as a guide.
Restarting the Jamulus server on Google Cloud Platform. Now I’m really getting wonky, but: once you compile Jamulus for the first time per the GCP QuickStart Video, when you turn the server off and want to restart it, (a) click the 3 vertical dots at the right end of your server entry in GCP and select Start/Resume, (b) click the triangle next to SSH and Open in New Browser Window, then (c) enter the following:
# Go to where the program is:
cd jamulus
# RUN the program in the background (in case you disconnect from SSH):
nohup ./Jamulus -s -n -u 20 &
# But check the program output as long as you're there
tail -f nohup.out
That will immediately restart your server, although it will have a different External IP address from the last time you ran it. When you Connect in the Jamulus app you’ll need to enter the new External IP address.
Setting up a server on your own computer. I have not yet tried setting up a Jamulus server on a local computer rather than in the cloud. If you’re singing with a local group, this could have the benefit of significantly reducing latency. The reason for this is that a cloud-based server lives wherever your cloud service provider (eg. Google, Amazon) has a data center that is hosting your server. That data center could conceivably be thousands of miles from your singers, although cloud services typically do allow you to choose the geographic location from among numerous data centers. And, this would ensure that your experience is completely free of charge, although experience with Google Cloud Platform thus far is that their server charges are tiny.
Up-to-the-minute info on using Jamulus. You can find a terrific August 2020 webinar on Live Remote Choral Performance with members of C4 here. The Questions section at the end is particularly helpful.