Latency Compensation Measurement

GlennO

Axe-Master
Note: This problem has been fixed in the USB firmware for the Axe-FX III and FM9. Just make sure you are using the latest version of the USB firmware and there will be no need for this workaround. If you are using an FM3 however, you may still need to use this workaround.





Latency Compensation Measurement

The Axe-FX III has a bug related to latency compensation (https://forum.fractalaudio.com/thre...rding-due-to-usb-latency-compensation.181686/) Basically, this means that, unless you set a preference in your DAW, your recorded AxeFX tracks will lag behind the tracks you are listening to while you record. Setting that preference in your DAW will compensate for that lag and your tracks will align properly.

But how do you know what the proper value is to set for that DAW preference? In the interest of brevity, the instructions in the recording guide are simple, but here's a more detailed description.

(Note for FM3 owners, the workaround instructions for FM3 owners are in this post: https://forum.fractalaudio.com/threads/latency-compensation-measurement.177851/post-2166655)

I recommend using the preset shown in this screenshot. The idea is:

1) Use the AxeFX as your audio device and connect your speakers to output 3.
2) Plug your guitar into input 3
3) Play a click track from your DAW out to usb channels 7/8. You'll hear that in your speakers.
4) Play guitar along with the click track, recording usb channels 1/2.
5) Measure the lag between your recorded guitar and the click track and use that for your DAW's latency compensation preference.

LoopbackPreset.png

The problem with this method is that you need to play perfectly in time with the click track, something that even the best of us would have trouble doing with the sub-millisecond accuracy that is needed to achieve measurement precision we want.

Instead, take a patch cable and connect output 3 to input 3. Now you don't have to rely on precise timing when you play your guitar. The output patched from out 3 to in 3 takes the place of you playing the guitar and gives you perfect timing precision for the measurement.

Play your click track and record usb Channels 1/2. Compare the recording with the click track to find the number of samples you need to put in your DAW latency compensation preference. (Note: make sure your latency compensation preference is set to zero before doing this measurement.)

What is a typical value? I use Cubase with Asio guard set to normal and an audio buffer of 64 samples and I have my AxeFX usb buffer size set to 128. I measure a lag in the recorded track of 500 samples. When I put 500 into the record shift preference, my recordings align properly. The name of the preference varies between DAWs. In Logic it's called "Recording Delay". In Reaper it's called "Manual Offset".

What if instead of recording guitar, you are re-amping? Do you need a different value for the latency compensation? Take a look at the preset screenshot above and you'll see an output 2 block. If you record usb channels 3/4 instead of 1/2 with this preset, you'll effectively be reamping. So, if you do that, will you see a difference in the value for the latency? The answer is yes, but the difference should be quite small. For me, instead of a lag of 500 samples, I see a lag of 460 samples. That's less than a millisecond difference. Personally I don't consider that enough of a difference to justify using 2 different latency compensation values for those 2 different scenarios.

The bottom line is:

1) I measured the uncompensated latency in my AxeFX a long time ago, I set my DAW preference, and I haven't had to worry about it since.
2) I use the same value for recording and re-amping. This means my re-amped tracks are off by a few samples, but I don't consider that enough to warrant using 2 different values.

For additional details on this subject, see this thread: https://forum.fractalaudio.com/thre...rding-due-to-usb-latency-compensation.181686/

P.S. I realize some people have reported the latency compensation they measure varies from project to project. I haven't seen that myself, so I can't comment on that.
 
Last edited:
Yes, if you're using Logic, you can alternatively use the IO plugin. Choose "7" for the Output and "1" for the Input. For the second (reamp) test, use "3" for the Input. When you set the recording delay audio preference in Logic, you'll use the negative of the number the IO plugin shows.
 
Assuming you could play perfectly in time - is this setup the same latency as IN1->Amp->Cab->OUT1->DAW

Wondering if there is more latency sending the click track via USB than sending a perfectly in time guitar through IN1
 
Assuming you’re using your AxeFX as your audio interface, it’s exactly the same because the audio you listen to when you play along with your guitar goes out through usb. That’s why I explained it the way I did, to help show it’s the same. But if you have precise timing, you’re welcome to try to measure the latency compensation discrepancy by recording yourself playing guitar along with a click track
 
Assuming you’re using your AxeFX as your audio interface, it’s exactly the same because the audio you listen to when you play along with your guitar goes out through usb. That’s why I explained it the way I did, to help show it’s the same. But if you have precise timing, you’re welcome to try to measure the latency compensation discrepancy by recording yourself playing guitar along with a click track
Thanks for the clarification - this should be pinned! :D
 
is there a particular way to do this with the FM3?

I did try this the other day and I set up a click track in Studio 1 - I then set the input 1 source the USB 3/4 and then recorded the click back through.
I had to use quite a large negative value -2236 samples. To test I then recorded a part and it all seemed to be in sync.

It would be good if there were some new drivers that would send the correct offset from the Fractal to the DAW as I don't have this issue with my other Audio interface
 
is there a particular way to do this with the FM3?
This should work for FM3 owners. Use your FM3 as the audio device in your DAW, and...

LoopbackPresetFM3.png

1) Use the I/O settings to direct USB 3/4 playback to the input 1 block
2) Use a patch cable to connect out 2 to in 2.
3) Play a click track from your DAW out to usb channels 3/4.
4) Record that to a new track which has usb channels 1/2 as input.
5) Measure the lag between your recorded click track and the original click track and use that for your DAW's latency compensation preference.

There are other ways to do it, but this way has the advantage of being nearly identical to the way one would normally record a guitar.
 
Is there a reason you cant just do INUSB-AMP-CAB-OUT1?

I just tried it and my click is coming in earlier than the recording - I reckon I did something wrong xD
 
There are a number of ways to do it, but I thought it best to choose a method that most closely mimics what you do when you normally record a guitar.

Make sure your latency compensation preference is set to zero when you do this test.
 
Latency Compensation Measurement

In the AxeFX recording guide I posted last week, there is a note about latency compensation when using the AxeFX as your audio interface. Basically, this means that, unless you set a preference in your DAW, your recorded AxeFX tracks will lag behind the tracks you are listening to while you record. Setting that preference in your DAW will compensate for that lag and your tracks will align properly.

But how do you know what the proper value is to set for that DAW preference? In the interest of brevity, the instructions in the recording guide are simple, but here's a more detailed description.

I recommend using the preset shown in this screenshot. The idea is:

1) Use the AxeFX as your audio device and connect your speakers to output 3.
2) Plug your guitar into input 3
3) Play a click track from your DAW out to usb channels 7/8. You'll hear that in your speakers.
4) Play guitar along with the click track, recording usb channels 1/2.
5) Measure the lag between your recorded guitar and the click track and use that for your DAW's latency compensation preference.

View attachment 90499

The problem with this method is that you need to play perfectly in time with the click track, something that even the best of us would have trouble doing with the sub-millisecond accuracy that is needed to achieve measurement precision we want.

Instead, take a patch cable and connect output 3 to input 3. Now you don't have to rely on precise timing when you play your guitar. The output patched from out 3 to in 3 takes the place of you playing the guitar and gives you perfect timing precision for the measurement.

Play your click track and record usb Channels 1/2. Compare the recording with the click track to find the number of samples you need to put in your DAW latency compensation preference. (Note: make sure your latency compensation preference is set to zero before doing this measurement.)

What is a typical value? I use Cubase with Asio guard set to normal and an audio buffer of 64 samples and I have my AxeFX usb buffer size set to 128. I measure a lag in the recorded track of 500 samples. When I put 500 into the record shift preference, my recordings align properly. The name of the preference varies between DAWs. In Logic it's called "Recording Delay". In Reaper it's called "Manual Offset".

What if instead of recording guitar, you are re-amping? Do you need a different value for the latency compensation? Take a look at the preset screenshot above and you'll see an output 2 block. If you record usb channels 3/4 instead of 1/2 with this preset, you'll effectively be reamping. So, if you do that, will you see a difference in the value for the latency? The answer is yes, but the difference should be quite small. For me, instead of a lag of 500 samples, I see a lag of 460 samples. That's less than a millisecond difference. Personally I don't consider that enough of a difference to justify using 2 different latency compensation values for those 2 different scenarios.

The bottom line is:

1) I measured the uncompensated latency in my AxeFX a long time ago, I set my DAW preference, and I haven't had to worry about it since.
2) I use the same value for recording and re-amping. This means my re-amped tracks are off by a few samples, but I don't consider that enough to warrant using 2 different values.


P.S. I realize some people have reported the latency compensation they measure varies from project to project. I haven't seen that myself, so I can't comment on that.
Just to be blatantly clear: Both the processed amp track AND the DI are lagging, but at different times?
 
I recommend you set your manual compensation preference in your DAW once and leave it set to that same value for all circumstances, including both recording and re-amping, because you’ll need compensation in both of those cases. There might be a slight difference between those two cases, but if so, the difference should be quite small. You have to be realistic...there are limits to the precision you can expect when using outboard gear.
 
I recommend you set your manual compensation preference in your DAW once and leave it set to that same value for all circumstances, including both recording and re-amping, because you’ll need compensation in both of those cases. There might be a slight difference between those two cases, but if so, the difference should be quite small. You have to be realistic...there are limits to the precision you can expect when using outboard gear.
Is this per-project basis or lifetime?
 
You’ll need to change it only if you do things like change the usb buffer size in the Axe-FX or your DAW. Otherwise, it should be lifetime. I haven’t had any need to change it since I set it a long time ago. That said, sixtystring has reported seeing it change between projects. That might be due to a bug in Reaper and unrelated to the Axe-FX, but I haven’t seen that problem myself.
 
I've found that any significant change to the sound in the Axefx chain (active fx, distortion...) throws off the Logic IO plugin - for that reason I stopped using it in preference of marking off the time differences in signal transients in the Axefx source signal vs a signal direct through a separate interface that reports latency to a DAW - crude but gets a descent measurement.
 
Last edited:
I’ve had my AX-3 for ~18 months and I’m literally just becoming aware that this latency comp/manual offset is an actual issue when using the Ax as the interface. As an audio novice I guess I’m a little relieved to find this out bcuz for a while I’ve been really frustrated tracking everything correctly and as close to a perfect performance as possible and the result just always seems to be “off the pace” of everything else. And I try to avoid the “grid addict” syndrome and realize slight imperfections are actually a good thing, but not when it’s noticeably lagging. Spent countless hours moving tracks around here and there and couldn’t figure out why the hell it was doing that! Ok rant over, thanks for this extremely valuable information! Wish I would’ve known about it or at least understood it sooner!
 
I commented in the "Axe-FX for the recording musician" thread that I was getting zero latency shown from the IO plugin in logic but it was operator error. Once I got the test setup correctly its showing me various results on an empty project with just the plugin I get +704, on another project with a couple of tracks I got +711, then I loaded up the sample Billie Eilish project and it is showing +617.
 
I want to make sure I'm understanding this correctly... I'm using Studio One Prof (Ver 4.6.2) and I'm providing a screen shot of each menu for how it reads latency in the I/O preferences. I'm just not sure how to interpret it for what my manual offset should be to correctly offset the latency. Do I only look at the 'Input Latency' under the 'Audio Device' tab and then enter a negative value of that number (which would be -284 samples for the offset)...? Or do I look at 'Instrument' under Monitoring Latency in the 'Processing' tab and enter that as a negative value (-401 samples)...Orrr am I just retarded and both of my ideas are wrong lol hopefully someone can provide a little clarity... Thanks in advance.
 

Attachments

  • SS-1.png
    SS-1.png
    77.1 KB · Views: 51
  • SS-2.png
    SS-2.png
    192 KB · Views: 50
Back
Top Bottom