Hi all, since I've posted in the past about my adventures trying to get a good setup working with jammr, I thought I'd provide an update since I now have a system that's working extremely well.
I was struggling for a long time to buy something like a Focusrite Scarlett because I was concerned about paying that much and being stuck with something that I'd outgrow.
I instead bought a Behringer Xenyx Q502USB mixer ($59 at Sweetwater) and it has been a complete treat to work with. They sell larger versions with more inputs (this 502 has one mic preamp and 2 additional paired channels) but they also sell versions without the USB port, so make sure you get a USB version.
With the mixer plugged into the PC via USB, I get no perceptible latency and the USB audio codec (I'm on windows) automatically comes up in the jammr options for both audio input and output (for my setup I keep “playback my audio” checked because the mixer doesn't have a self-monitoring feature). This makes it feel like it “just works” without messing around with proprietary software/settings/etc. Audio goes into the mixer, then to jammr, then back out to the mixer from jammr and I listen from the mixer's headphone jack (for this particular setup the USB/2-track “to phones” button needs to be pressed so that the audio comes through to the headphones and the “to main mix” needs to be unpressed to avoid a feedback loop).
From there I've dropped Ableton and instead am using garageband for backing track loops. It's working great. I have one iphone (an old one with a headphone out jack) running a loop with drums/bass/chords etc., and a second iphone connected with a lightning/3.5mm adaptor (and then to a 1/4“ adapter) that I use as a digital instrument to add stuff over-top. A microphone or whatever other analog instrument could run beside all this stuff (for me this will eventually be a bass guitar into a non-preamp DI box that then runs into the XLR input on the mixer).
The result is a pretty compact setup - laptop, 2 iphones, and a mixer that is about 7.5” by 5“. A further advantage of garageband is that the ”drummer“ instrument will let you put in a few parameters and then a digital drummer plays a varied set of beats including fills, etc., making it feel much better than a boring straight sequenced beat. One thing that took me way too long to figure out (even though Stefan has written it in the documentation) - turn jammr's metronome off if you have a some sort of solid percussion/bass/whatever playing on loop. Doing so releases you from having to click ”play“ on the looper right on the beat. The percussion track will keep time and as long as everyone has the metronome turned off, jammr will send intervals properly, even if the interval ends between beats.
One note is that unless you're running a stereo cable out of the iphones and then split into two separate channels on the mixer, you'll only get half the audio, so you'd need to pan all the tracks in garageband to one side.
As a final note, while adding additional pieces of hardware is expensive/takes up space/etc, one thing that has really helped me both from a latency perspective and a ”things magically working or not" perspective is assigning a single task to each hardware device (i.e. the machine that is running jammr is only running jammr. If I were to run something like Ableton also, that would be on a separate machine).
It is on the list to see if I can get jammr working well on a raspberry pi (I know you offer a flatpak Stefan - thank you!!!) and then use the laptop instead for a fancier synth with a midi controller.
Anyway, I hope this is helpful to someone that is trying to fill out the sounds a little more but isn't a musical or technical genius (as I am not).
Thank you Stefan for this wonderful product!!! It has reconnected me both with music and with an old friend. I'm having a great time and signing on is a highlight of my week. Every week. Maybe if I actually learn to play an instrument I'll dip a toe into a public jam sometime.
(edited to fix a typo and add a few thoughts)