Latency is the delay between a sound being made and being heard. When you play music online it is the biggest obstacle to playing together: if you hear the other players too late, you start waiting for each other and the tempo falls apart. The good news is that most of the delay is in your own setup, so there is a lot you can do about it. These tips work for any online music app, and they are exactly what we recommend for Solocontutti.
Delays of more than about 100 milliseconds (a tenth of a second) are clearly audible and make playing together very hard. Under 50ms is the design goal for online music software. That may sound strict, but musicians already cope with some delay on stage: sound needs about 33ms to travel 10 metres, and players compensate for that without thinking. The total delay you hear is the sum of a few parts: your sound card, the network, and the other player's sound card. Each tip below takes a bite out of one of them.
Bluetooth headphones usually add a large amount of delay, often more than everything else combined. Use wired headphones. Don't use your computer's speakers either: the sound of the other players feeds back into your microphone.
WiFi is less reliable than a cable and adds delay, and the occasional hiccup is heard as a click or dropout. Connect your computer to your router with a network cable if you possibly can. Avoid mobile data (3G/4G) for playing together: the latency is too high and a long session uses a lot of data. See notes on wireless networks.
A VPN sends all your traffic on a detour through another server, which adds delay. Solocontutti does not work correctly across a VPN, so switch it off while you play.
Every sound card adds some delay, and built-in sound devices vary enormously. An external audio interface usually gives lower latency and better sound. On Windows, the driver matters as much as the hardware: choose a device that supports ASIO, the industry standard for low-latency audio. If your device has no ASIO driver, ASIO4ALL can often help. See setting up your computer for advice on sound cards and microphones.
Sound cards collect a small batch of samples (a buffer) before passing them on, and that takes time. At 48,000 samples per second, a buffer of 240 samples adds 5ms; 480 samples adds 10ms; 960 samples adds 20ms. In Solocontutti you set this under Preferences, "buffer size": go as low as you can. If you start to hear clicks or crackles, your computer or network can't keep up, so go one step back up.
| Buffer (samples) | Delay at 48 kHz |
|---|---|
| 120 | 2.5 ms |
| 240 | 5 ms |
| 480 | 10 ms |
| 960 | 20 ms |
Small buffers mean more work for the processor, especially with more players in the session. A faster computer can run smaller buffers and so achieve lower latency. Close programs you don't need while you play, and see what equipment you need for the minimum specifications.
An internet subscription with more megabits gives you more bandwidth, not less delay. As long as your connection can comfortably carry the audio, a faster plan won't make it quicker. Network delay mainly comes from the number of stops the data makes on the way, which loosely depends on distance: within about 3,000 km, 20 to 30ms is reasonable. Playing with people in your own country or region gives the best results. If you hear clicks on a poor connection, lowering the bit rate helps.
Solocontutti is built for low latency: it uses its own lightweight network protocol rather than the heavier protocols browsers use, and an audio codec that copes well with the odd lost packet. Its shared metronome is heard by every player at the same moment, even when their delays differ, which makes it much easier to keep together.
“I have found the sound quality, latency and freedom from glitches historically to be far superior to Jamulus and Jamkazam.”
Want to know more? The latency appendix in our manual explains all of this in detail.