Topic: Components of Round-Trip-Latency

I'm trying to understand what make up real-world latency ...

I measured RTL on my Babyface Pro FS with 44.1kHz, 48 samples using Reaper using a click track and connecting AN 2 Out to AN 2 In with an XLR cable. Reaper's "Use audio driver reported latency" option was turned off. The results ...

https://Goss.com/img/BBF_RTL_44.1kHz48Samp_Reaper.jpg

... indicate 152 samples of latency, which seems low.

However, when I turn on Reaper's automatic recording latency compensation, which is based on what the interface reports, the results are precise (the third track of four in the above image).

My Buffer Size is set at 48 samples, plus a 32-sample Safety Buffer (Babyface Pro FS Manual dated 22Sep2020, page 82), plus the 5 (AD) and 7 (DA) sample "converter latency" reported in the (awesome) spreadsheet available at https://www.tonstudio-forum.de/index.ph … -04b-xlsx.

For round trip, this should be (48+32) x 2 + 5 + 7 = 172 samples. I measured 152 samples.

OK ... faster is better, but I'm trying to understand why ...

Could you tell me where did I go wrong?

Is converter latency (reported in the XLS) over and above the buffer and safety buffer latencies?

2

Re: Components of Round-Trip-Latency

First I would use RTL Utility 1.02, much easier:

https://oblique-audio.com/rtl-utility.php

Second you calculated the added playback buffer two times - why? It's not record.

Or: This is not Mac, so there is no Safety double buffer.

The remaining difference is hidden USB buffers, a few samples. Any transport format needs buffering, but usually not enough to be significant.

Regards
Matthias Carstens
RME

Re: Components of Round-Trip-Latency

Clint Goss wrote:

[...] sample "converter latency" reported in the (awesome) spreadsheet available at https://www.tonstudio-forum.de/index.ph … -04b-xlsx.[...]

Thanks for the flowers wink
BTW - in case you do not know - values were taken from the (awesome) RME manuals.
Thanks again Matthias for this level of detail in your documentation.

BR Ramses - UFX III, 12Mic, XTC, ADI-2 Pro FS R BE, RayDAT, X10SRi-F, E5-1680v4, Win10Pro22H2, Cub13

4 (edited by Clint Goss 2021-11-28 15:31:42)

Re: Components of Round-Trip-Latency

Thank you so much for the feedback!

I've now got the RTL Utility v1.02 (much easier!) and ran tests on my BBF Pro FS on a desktop and a UCX II off a laptop.

The RTL Utility - measured and reported by the interface - match my measurements exactly (152 samples for 44.1kHz @48 buffer).

I see in the Doc that there is a Safety Buffer and a ?separate? Safety Offset only for the Mac.

So I'm trying to understand the path here ... on Win ASIO, is it something like:

Send => [USB latency] => [Sample Buffer (48)] => [Converter Latency (7)] =>
  Loopback Cable =>
    [Converter Latency (5)] => [Sample Buffer (48)] => [Safety Buffer (32)] => [USB latency] => Receive

Is that the correct path?

If the USB latency is 6 samples on each end that would come out to the 152 measured / reported samples. (I have separately measured the USB latency at 0.11 ms, and that would be about 5 samples).

Also ... The RTL Utility running on my Laptop with a UCX II gives different (and unsettling) results: 157 measured and 214 reported. Is that because the laptop is fundamentally slower - maybe in the USB handling?

Do the RME drivers include a prediction of USB latency when reporting projected latency?

All this is really important to me for my work with testing/reducing latency in my Wind Synth rig ... Thanks!

5

Re: Components of Round-Trip-Latency

More like this:
Send => [USB latency] => [Sample Buffer (48)] => [Safety Buffer (32)]  => [Converter Latency (7)]
=>  Loopback Cable =>
[Converter Latency (5)] => [USB latency] => [Sample Buffer (48)] => Receive

Laptop UCX II: Latest driver and firmware?

You should read the ASIO spec. The latency values are found in there and presented via the ASIO driver to the ASIO host. That's what RTL shows as reported. You can get further details by right clicking the log column header.

Regards
Matthias Carstens
RME

Re: Components of Round-Trip-Latency

UCX II is reported to be v37 firmware, according to the Fireface USB Settings dialog/app. This looks current according to https://www.rme-audio.de/fireface-ucx-ii.html (which says "UCX II: 37/24/16" ... a little hard to decipher ... not sure what the 3 numbers are ...).

Driver is 1.212, also current.

BBFP-FS is at v125 firmware, according to the Fireface USB Settings app. This is old (driver site says "Babyface Pro & FS: 130"), but the BabyFace is performing the best.

Thanks for the updated sequence diagram!!

7

Re: Components of Round-Trip-Latency

Ok, I will re-check the latency values reported in the driver.

Regards
Matthias Carstens
RME

8

Re: Components of Round-Trip-Latency

Clint Goss wrote:

(which says "UCX II: 37/24/16" ... a little hard to decipher ... not sure what the 3 numbers are ...).

See readme: USB, DSP, Class Compliant.

Regards
Matthias Carstens
RME

Re: Components of Round-Trip-Latency

I moved the UCX2 from the laptop to the desktop and also changed to a better USB cable (shorter, with RFI donuts), and got the same results from the RTL Utility.

The BBFP-FS reports In+Out=Total of 64+88=152 and is measured at 152 on the desktop. Sweet!

The UCX2 reports In+Out=Total latencies of 103+111=214 but is measured at 157, on both hosts with short and long USB cable.

RTL Utility 1.0.2

Interfaces
  BBFP-FS:
    Firmware: v125
    Loopback setup: AN2 out => XLR-F to XLR-M => Mic2
  UCX2:
    Firmware: v37
    Loopback setup: AN3 out => TRS-M to XLR-M => Mic2

Hosts
  Desktop
    OS: Win10x64
    Driver: v1.212
  Laptop
    OS: Win10x64
    Driver: v1.212

Results
                BBF Desktop     UCX2 Desktop    UCX2 Laptop
  Sample rate   44,100          44,100          44,100
  Buffer size   48              48              48
  Rep In Lat    64              103             103
  Rep Out Lat   88              111             111
  RTL Reported  152             214             214
  RTL Measured  152             157             157
  Return level  3.0             -5.3            3.0
  Noise floor   -108.0          -113.7          -85.1
  Correl Factor 86.6            27.3            89.9

10

Re: Components of Round-Trip-Latency

Wrong latency values confirmed, update coming.

Regards
Matthias Carstens
RME

Re: Components of Round-Trip-Latency

Thank you so much! I was just today again scratching my head about that ...

12

Re: Components of Round-Trip-Latency

Windows driver 1.219 is now available, with corrected latency values and TM FX 1.75. Also use the latest flash tool to update the firmware to V39!

Regards
Matthias Carstens
RME

Re: Components of Round-Trip-Latency

Got something similar with MadiFX with AES roundtrip through BURL Bomber DAC/ADC, 48kHz / 256k buffer
Measured 13.3ms 640 samples
Reported 543 samples

www.analoguemastering.com

14

Re: Components of Round-Trip-Latency

What is there similar? You measure an external, additional AD/DA conversion. How can the numbers from the MADI card then match?

Regards
Matthias Carstens
RME

15 (edited by Raphie 2021-12-19 13:23:31)

Re: Components of Round-Trip-Latency

Good point, how can I validate the round trip more reliably? just plug the AES out in the AES in?
or use the loopback in TMFX?

www.analoguemastering.com

16

Re: Components of Round-Trip-Latency

AES Out to in should give the numbers expected. Loopback in TM FX will be similar, but not identical. Inserting external devices gives delta numbers that need to be used in the DAW to compensate track latency.

Regards
Matthias Carstens
RME

Re: Components of Round-Trip-Latency

I have the same problem with UFX and Ableton that I couldn't solve sad

18

Re: Components of Round-Trip-Latency

If you want help or answers then give us details to be able to react. That one sentence is not only missing any, but also incorrect ('same problem' referring to what problem within this thread?).

Regards
Matthias Carstens
RME

Re: Components of Round-Trip-Latency

MC wrote:

AES Out to in should give the numbers expected. Loopback in TM FX will be similar, but not identical. Inserting external devices gives delta numbers that need to be used in the DAW to compensate track latency.

ThnX MC, Will do some testing over next week.

www.analoguemastering.com

Re: Components of Round-Trip-Latency

For reference, here are the diagrams that show my test setup, with timings on each step.

https://goss.com/img/LatSigPathCG_8A_TotalMixLoopback__2021_1204b_200dpiC10.jpg

https://goss.com/img/LatSigPathCG_8B_CantabileLoopback_2021_1205a_200dpiC10.jpg

21 (edited by helmanfrow 2022-02-02 22:58:21)

Re: Components of Round-Trip-Latency

Clint Goss wrote:

For reference, here are the diagrams that show my test setup, with timings on each step.
https://goss.com/img/LatSigPathCG_8A_TotalMixLoopback__2021_1204b_200dpiC10.jpg

Unless my understanding is flawed, TotalMix processing takes place onboard the BabyFace prior to the USB interface.
If I'm correct then USB and its associated latency are excluded from the round-trip calculation and are superfluous to this diagram.
This would mean that the BabyFace is Host 2, and therefore, in the drawing, TotalMix should be depicted as a subset of the BabyFace.

Correct me if I'm mistaken.

Re: Components of Round-Trip-Latency

Thanks for pointing that out @helmanfrow.

I had updated the diagram on 14Jan, but did not post it here. The updated version:

https://www.Goss.com/img/LatSigPathCG_8A_TotalMixLoopback_2022_0114a_200dpiC10.jpg