Realtime online jamming is not very popular because it’s not a very good experience in the current state of technology. The name of the game here is latency.
As a rule of thumb, musicians playing live are able to ignore latency shorter than 5ms. This is easy to prove as most PA equipment in small venues will have latency around this mark.
However, latency above 10ms starts being frustrating, and once you get above 25ms you’ll be pretty much unable to play.
When you are recording video, the signal from your camera needs to be encoded. Like with audio, lossless encoding would take a ton of space so pretty much all consumer video formats are lossy.
If you’re recording to a file and you have a PC or a laptop, the encoder will likely put most priority on the quality of the file, not much priority in the size of the file. If you’re recording on a phone, the encoder will likely compress more to save on space, but even in this case size is not of paramount importance. This is because space efficient encoding requires a lot of CPU power, to the point where some devices might not be unable to record and encode in real time.
That’s part of the reason Netflix or Amazon Video look very good and enable you to stream HD even on relatively poor Internet connections while Skype and Zoom can look less stellar even on good connections on both ends of the call. Netflix is able to compress efficiently ahead of time while your Zoom call doesn’t have this luxury.
Also, video encoding adds some latency.
The Internet as we know it was designed as a decentralized system able to withstand natural disasters, sabotage, and bombings of communication hubs. It’s pretty robust but that comes with some drawbacks, and unfortunately one of them is latency.
If you open a terminal on your computer and type “ping facebook.com” you’ll see how fast it takes for the simplest possible data packet to round-trip from you to the closest facebook.com server and back. If you’re really close to one of their datacenters, you might get something in the ballpark of 10-20ms. But typically you’ll see something closer to 50ms. And that’s pretty much the simplest case.
If you’re part of this industry you might object that there’s ways to cut this latency in half or more by using a specialized protocol. Yes, true, online gaming is proof that you can get pretty good results. However, games “cheat” by:
- optimizing how much data is sent at any given point;
- having a central server which is the point of reference and “the clock” for what is going on;
- predicting players’ actions so that a lot of jitter is unnoticeable;
- “fixing” small player errors that happen due to known latency.
Two-way video communication cannot use those optimizations easily.
Jittter, what’s that?
I mentioned jitter above which is the final nail to the coffin. Jitter is the variation of latency in time. You see, due to network congestion and network re-configuration, as well as hardware and software behavior, latency constantly changes. Imagine how hard it would be to play along if your click track constantly floats between 115 and 125 BPM. “On average” it might have been 120 BPM but you’d still be beyond frustrated trying to play along.
The current gold standard for regular VC calls is roundtrip latency of up to 300ms with jitter up to 30ms. That’s way beyond what’s acceptable for jamming.
You might have some success trying out various communication systems designed for gaming where latency is more important than in regular voice conference apps. However, even there you’ll find that the experience is probably bad enough that it’s hopeless. Especially now that so many people are sheltered-in-place so network and system congestion is high. Additionally, gaming systems usually sacrifice audio quality to achieve better performance. For us a relatively low-latency connection that sounds like AM radio would be a tough sell though.
Now that I gave you some technical background, you might be able to communicate the above to the people you want to jam with and try some specialized software like:
- https://www.cockos.com/ninjam/ - it counts latency in musical measures which lets the musician compensate
- https://jammr.net/ - it plays a centralized metronome for everybody so you stay “more less” in sync with one another
Your band needs to be relatively close geographically
Imagine there’s a fiber-optic wire between your computer and your band mate’s computer. If you are 1000 miles away from each other, the fastest roundtrip theoretically possible is 10ms: that’s because of the speed of light. But even a direct fiber-optic cable does not operate at 100% light speed. There will be many “hops”, which is network switching hardware, between you and your friend. In effect, you’re unlikely to see latency smaller than 30ms.
So, if you’re in the same city and the number of hops between you is relatively low, some of the gaming apps or the specialized apps might work. Good luck!