sooperlooper latency setting help

Optimize your system for ultimate performance.

Moderators: khz, MattKingUSA

Post Reply
phibow
Established Member
Posts: 6
Joined: Wed Jun 11, 2014 7:46 pm

sooperlooper latency setting help

Post by phibow »

Hi everyone,
I am using sooperlooper and I am having trouble finding the right latency setting.

There is an option to set the latency manually, if leaving this as "Automatically set Latency Compensation Values" a recording works ok (a little off compared to the source but acceptable) but Overdubbing is offset (late). So trying to set the latency manually I am not sure how to do it. Here's the information I have from jack_iodelay:

1906.058 frames 43.221 ms total roundtrip latency
extra loopback latency: 882 frames
use 441 for the backend arguments -I and -O

Trying to put 441 as input and output is really offsetted. Trying to keep the input low (ie: 64 samples) and the output a bit high to help the overdub feature, doesn't work, now the record is offset and but yep the overdub is almost correct on the offsetted record.

Image

I never touched the Jack Latency setting, should I? My settings are 44100, 256 frames, 3 buffer.

Image

I read this section in the documentation of Mobius as stated in the documentation of sooperlooper:
http://zonemobius.com/mobiusdoc.htm#Lat ... alibration

Still I don't get it.

I want to be able to loop perfectly from both the ADC (soundcard input) and a soft-synth (for example amsynth).
Cheers and thanks in advance!

merlyn
Established Member
Posts: 728
Joined: Thu Oct 11, 2018 4:13 pm

Re: sooperlooper latency setting help

Post by merlyn »

I haven't used sooperlooper but I have used jack_iodelay.
1906.058 frames 43.221 ms total roundtrip latency
extra loopback latency: 882 frames
use 441 for the backend arguments -I and -O
To set JACK up correctly put '441' into the 'Latency I/O' boxes on QjackCtl. Then you could try the automatic latency compensation on sooperlooper. For live playing you want the latency as low as possible. You could try lowering the size of the JACK buffer. How low it can go without audible Xruns depends on how well set up your system is and how powerful your processor is.

phibow
Established Member
Posts: 6
Joined: Wed Jun 11, 2014 7:46 pm

Re: sooperlooper latency setting help

Post by phibow »

Thanks for the feedback! This is as low as I can go without xruns. I am running Ubuntu Studio on a Surface Pro 3 - i7, but using lots of tracks in Bitwig -> Pure Data -> Sooperlooper, I cannot go lower than 256 sadly.

I tried putting 441 in Latency (qjackctl) for both input/output, but still have offset issues in sooperlooper. Like I said recording a loop works almost perfectly, but not overdubbing.

Anyone?

merlyn
Established Member
Posts: 728
Joined: Thu Oct 11, 2018 4:13 pm

Re: sooperlooper latency setting help

Post by merlyn »

441 samples is a lot of extra latency. It's exactly 1ms at 44.1kHz, which is the latency of USB 1.1. What audio interface are you using?

EDIT : If looping is OK the input buffer is good. If overdubbing is late the output buffer is too small.

phibow
Established Member
Posts: 6
Joined: Wed Jun 11, 2014 7:46 pm

Re: sooperlooper latency setting help

Post by phibow »

Yes it's USB 1.1 (Edirol-UA25EX). So if I understand correctly I have 1 ms (input) + 1 ms (output) extra latency because I am using a soundcard that is USB 1.1? Sadly I cannot change the soundcard, it's "glue" in my custom instrument.

I tried to manually set the latency in sooperlooper, but no values works. If adding output latency the recording is offsetted, sometimes I can get the overdub on time with the recording but then both will be offsetted compared to the source. Not fun to guess latency. Using a metronome, record (listen if it's on time), overdub = offsetted, change latency, repeat. I've been trying for 2 hours...

merlyn
Established Member
Posts: 728
Joined: Thu Oct 11, 2018 4:13 pm

Re: sooperlooper latency setting help

Post by merlyn »

phibow wrote:So if I understand correctly I have 1 ms (input) + 1 ms (output) extra latency because I am using a soundcard that is USB 1.1?
That's right. The software should be able to calculate this out. From the link you posted :
If you set output latency too low, overdubs will sound like they are playing too late. If output latency is too high, overdubs will sound like they are playing too early.
That suggests it's only the output latency that you need to adjust. Overdubs are late so you add more latency compensation.

phibow
Established Member
Posts: 6
Joined: Wed Jun 11, 2014 7:46 pm

Re: sooperlooper latency setting help

Post by phibow »

That's my problem, if adding more latency for the output (to correct the overdub) then my recording is offsetted... I don't understand why, it should only offset the overdub, but I can hear it, the recording is not on time anymore after touching only the output latency. What a puzzle.

phibow
Established Member
Posts: 6
Joined: Wed Jun 11, 2014 7:46 pm

Re: sooperlooper latency setting help

Post by phibow »

Just to leave a trace on this thread, I tried with a "better" soundcard, well at least it's USB 2.0 and I have extra loopback latency: 714 frames (so 357 for qjackctl backend arguments). Not a big difference.

merlyn
Established Member
Posts: 728
Joined: Thu Oct 11, 2018 4:13 pm

Re: sooperlooper latency setting help

Post by merlyn »

Bit of a long shot but you could try JACK in sync mode. That gets rid of an extra buffer on the output which sooperlooper may not be aware of.

it's in QjackCtl > Settings > Use server synchronus mode.

Then restart JACK.

phibow
Established Member
Posts: 6
Joined: Wed Jun 11, 2014 7:46 pm

Re: sooperlooper latency setting help

Post by phibow »

@merlyn Thank you again so all the information. Wow what a ride, I have finally a setup working. All the juicy information in this forum:
http://essej.net/slforum/viewtopic.php? ... 7328#p7328

In short, every setup is unique, for me what worked was to remove the trigger_latency in SL and configured only the input latency to frames/period (256) * 2 + 64 (delay from pure data limiter). Yes, took me a lot of trial and error. I still don't get it, but it works perfectly.

Thanks

Post Reply