Arg! USB digital has latency compared to Audio Outs

plyall

Power User
Folks -

I use a Mac Pro (fairly hefty machine), and thus far my USB recording experiences have been flawless (well - except that they don't sound like my Tech-21 PA-60 cabinets). Just today, I did an experiment where I ran the USB into the computer and used FX Loop to feed Output 2 to some mic'd cabinets. DELAY! The USB signal is audibly delayed from the Output 2 signal (as played into mic'd powered speakers). I recorded the difference to verify, and the USB input arrives considerably later (80-120 ms is my guess) than the signal from the mic'd cabinet. Hmmm.

I re-ran the test, this time patched Output 1 via analog I/O (FireFace 800 inputs 9&10, using a buffer size of 32 or 64 samples), patched a mic on the cabinet to input 7 on the FireFace, and recorded the two signals. While not PERFECTLY lined up, the two signals had no audible delay between them.

Rats. I had hoped to be able to record the Axe-FX II purely in the digital domain, but this USB latency kills that idea.

I guess my next experiment is to try to use the S/PDIF connections on the Axe-FX and the FFace 800 and see if they are in alignment. Too bad - I was hoping to use those S/PDIF digital I/O's on the Fface 800 for my Lexicon PCM 90.

Anyway, it looks like I'll be using the Output 1 analog outs into my FFace 800 until I can find a better solution.

Fractal - and anyone else - any thoughts, comments, or discussion on how the USB driver will tighten up the delay?


Unrelated question 1: Is there a way to control the output level of the USB signal going to the computer? I have tried Out 1/2 and they change nothing.

Unrelated question 2: When the external environment is using Word Clock or LightPipe for timing sync, how does the Axe-FX/USB manage its clock? Does it sync to the host (which is synced to the FFace 800 using Word Clock)?

I know it's a lot of questions,, but these are pertinent queries for ANYONE that would use USB to record. Right now, it looks like the only proper use for USB is to support Axe-Edit.

Pete
 
...One more thought...

If I use the S/PDIF output, how do I 'sync' the Axe-FX to the clocking system? If I use both S/PDIF out and input, will the Axe-FX slave to the digital clock arriving on the S/PDIF input? (My Lexicon PCM-90 appears to).
 
Crap. Bogus. Unsat.

It appears that the Axe-FX pays no attention to inbound S/PDIF for clocking purposes. I had a flashing SYNC light on my FFace 800 (meaning it is not synced to the same clock as the larger system/FFace 800). This renders S/PDIF unusable,, unless it alone is used as the clock source. Not good. The only solution for the time being is to record the Axe-FX in the analog domain. This unfortunately adds one more D/A and A/D signal to the recording path. Certainly not optimal.

Pete
 
Whichever device is receiving the audio signal has to be set as the slave using SPDIF so the RMS would have to be slaved to the AxeFX when recording. It also means that you're either going to have to change that whenever the AxeFX is turned off. That's not an AxeFX issue, that's a SPDIF thing.

Seems like a little bit more delay than I would have expected via USB. Is there anyway for you to adjust the latency or buffers in your DAW? I'm getting about 25ms between analog and USB on a PC.
 
Any time you take an audio signal and run it thru a DAW (PC + software) and compare it to a directly amp'ed signal you will get latency. It's not an accurate comparison. There's a ton more processing that goes into the PC side to reproduce the inbound audio over USB.
Your second test obtained an close match because BOTH signals were processed - and recorded - by the DAW.
Again, your 1st test is not valid.

Too many variable involved.. look at DAW buffer sizes, etc.
 
With due respect, how was test #1 invalid? BOTH signals originated with a pick stroke hitting the string, were processed by the Axe-FX II, and ouput to two targets: 1 - The USB output 2 - the Output 2 output. The USB signal then traveled DIRECTLY to the computer via USB, and the Output 2 signal was sent to a Tech21 PA-60 amp/cab, mic'd, and then sent in via another input on my FF800. If ANYTHING, the Mic'd signal should be late, as it needs to make one more pass through an interface to get into the DAW.

The DAW itself: Hmmm. Buffer is set as low as it will go in Logic (32 samples - VERY small - translates to about 725 MICROseconds). Both signals (USB and Mic'd) are being processed through this same buffer, yet the USB arrives late.

Put in a simpler context, a signal is generated (guitar), sent to the Axe-FX for processing, Output 1 goes to USB, Output 2 goes to a speaker that is mic'd and then recorded. The USB track arrives later than the mic'd audio. Analysis - USB introduces latency not found in the other routing chain.

Pete
 
i've gotten pretty bad delay via usb as well, why doesn't the axefx2 use firewire instead of usb?
 
Thanks - I do understand about word clock needing to be the master source if recording via SPDIF from the Axe-FX II.

What I noticed was that my Lexicon PCM90, if it isn't the clocking master, it appears to 'listen' to its input SPDIF as a clocking master. This is a bonus. This was confirmed by SYNC LOCK lights on the front of the Fireface (my Wordclock, SPDIF, and Adat1 clocks are all locked together, same phase, etc.).

If I try the same exercise using the Axe-FX II connected via SPDIF IN and OUT, the SPDIF signal lock flashes, indicating improper line up with the other clocks. This means it doesn't appear to have the same 'bonus' (learning the clock from the SPDIF input) that the PCM90 has.

The only real downside here as that the master clocking reference has to be changed when using the Axe-FX II as the source, which is a diversion and is easily forgotten (until digital noise happens). I normally use an external Gen96x as a master word clock.

The best possible solution to this problem is to put a word clock connector on the Axe-FX, which of course won't happen.
 
Have you tried comparing it to another USB interface device?

I think s0c9 was merely pointing out like it sounds like you're blaming the Axe-FX II for the problem when it very well could be USB itself and how your PC handles it. You're not comparing apples to apples at the moment because your other interface is Firewire.
 
With due respect, how was test #1 invalid? BOTH signals originated with a pick stroke hitting the string, were processed by the Axe-FX II, and ouput to two targets: 1 - The USB output 2 - the Output 2 output. The USB signal then traveled DIRECTLY to the computer via USB, and the Output 2 signal was sent to a Tech21 PA-60 amp/cab, mic'd, and then sent in via another input on my FF800. If ANYTHING, the Mic'd signal should be late, as it needs to make one more pass through an interface to get into the DAW.

You've got the signal chain wrong for the USB audio path.

It went: guitar -> Axe-Fx -> USB OUT -> DAW (and it's internal mixer) -> DAWs output buss -> USB OUT -> Axe-Fx -> Speakers

It's the "DAW (and it's internal mixer) -> DAWs output buss" part that's adding all the latency. If you had any additional stuff in the signal chain in the DAW, like plugins or anything like that, they're adding additional latency too. Any time you run that signal through software on your computer it's going to slow it down but a not-insignificant amount. You're doing software-based monitoring with this approach and that adds latency.
 
FireWire would not be any faster than USB for such a small amount of data.

Not sure about that.... I went through a lot of USB interfaces trying to find the lowest latency. The Line 6 toneport stuff got pretty low but with a nasty CPU hit. My Firebox was lower still, more stable and with less CPU use...

Its been a while since I compared...
 
Adam/all -

Okay - now that makes more sense in terms of comparing the interface technologies (Firewire/USB).

I'm not blaming anything, except possibly the USB interface mechanism (Axe/USB/Computer), for delivering the data late as compared to live sound.

The net result is that I won't be using USB for recording anymore because of the lag. The USB connection is still plenty useful for jamming and especially for use with Axe-Edit. If there was a way to 'tune' the USB interface that might help.

One thing I haven't checked into yet: Using the Axe-FX as a 'physical plug-in' in Logic (send via physical outs/return via physical inputs). When using this approach in Logic, the program sends a round trip PING through the device to determine latency. This could still be iffy because of single trip time vice round trip time, etc. of the USB connection.

Pete
 
Actually, the signal chain is more like this (excuse weak ASCII art skills):

/ USB -> DAW recorded track (no outbound leg at all)
Guitar -> Axe-Fx
\ Fface -> DAW recorded track (no outbound leg at all)

So ... the DAW mixer, which is only on the outbound leg, has no impact on the two recorded signals. I'm not checking this with my ears (how I initially caught it), but with my eyes by comparing two waveforms on adjacent tracks.

I think we're losing the bigger picture here... it's not HOW the signal gets delayed compared to live playing, it's the fact that it IS delayed, and will be later/not in sync than live playing.

Consider this: you have a bass track in your DAW already. You want to lay a guitar track down next to it. You record with the USB interface. Your playing will 'slip behind' the bass part. In order to resync things, you would need to slide the guitar track forward by N milliseconds, where N is the amount of time of the latency.

Pete
 
Have you tried comparing it to another USB interface device?

I think s0c9 was merely pointing out like it sounds like you're blaming the Axe-FX II for the problem when it very well could be USB itself and how your PC handles it. You're not comparing apples to apples at the moment because your other interface is Firewire.
To the OP - (thanks Adam) What I was alluding to (and didn't explain well as I was in a hurry and trying to help ) is that you have one source coming in over USB, the other over Firewire. I'm not a Mac guy, but on a PC, those are completely different hardware/OS busses. Most PC's wouldn't be able to handle that (without ASIO4ALL) as few DAW's accept multiple simultaneous input devices. IF it works at all, I would expect latency - maybe random latency based on bus priorites, etc. ??

IOW - the latency may have nothing to do with EITHER the USB or Firewire per se, but the overhead associated with the hardware and software needed to process each protocol. Like (I think it was) Ian said, you are not comparing apples to apples. That's why I stated your first test is not valid.

If your 2nd input source (per Adam) input [mic'ed speakers] was over USB, then you might have a more valid test, but then.. TWO sets of drivers processing audio from different sources is not a valid test IMHO. Too many variables to narrow latency down to any one thing, or point at any one device as source of latency.
 
I think we're losing the bigger picture here... it's not HOW the signal gets delayed compared to live playing, it's the fact that it IS delayed, and will be later/not in sync than live playing.

Consider this: you have a bass track in your DAW already. You want to lay a guitar track down next to it. You record with the USB interface. Your playing will 'slip behind' the bass part. In order to resync things, you would need to slide the guitar track forward by N milliseconds, where N is the amount of time of the latency.

Pete
No issues with your conclusion above. However, the premise of you comparison might be fundamentally flawed and with a little troubleshooting usable as planned ?
 
I think we're losing the bigger picture here... it's not HOW the signal gets delayed compared to live playing, it's the fact that it IS delayed, and will be later/not in sync than live playing.
As I said before: the delay is true for all interfaces and you don't need to worry about it. Why? The DAW automatically compensates for it. In your case, using two input devices simultaneously, you're creating an scenario where the DAW has to pick its offset compensation (most DAWs will offset for one interface or the other, but not both independently). You can set the delay offset compensation in Logic on the Preferences -> Audio tab.

Having many hours of recording with the Axe-Fx II on a Mac under my belt now I can assure you, if it's your sole interface, everything will line up just fine. When you monitor for recording, don't use software monitoring on the Axe-Fx. Instead, plug headphones in to the headphone jack on it or use the signal from Output 1 or 2 in to a zero latency device (like a regular, old analog mixer or straight in to your monitors).

Consider this: you have a bass track in your DAW already. You want to lay a guitar track down next to it. You record with the USB interface. Your playing will 'slip behind' the bass part. In order to resync things, you would need to slide the guitar track forward by N milliseconds, where N is the amount of time of the latency.
It won't. It's only slipping behind in your case because you're using two input devices at the same time.

I can put together an Logic example if you don't believe me.
 
Ian -

I'd be very interested to see your Logic example!

Do you think it makes a difference that the USB ins/outs of the Axe-Fx II are combined into a single Aggregate device, which also includes my FF800?

Pete
 
With due respect, how was test #1 invalid? BOTH signals originated with a pick stroke hitting the

string, were processed by the Axe-FX II, and ouput to two targets: 1 - The USB output 2 - the Output 2 output. The USB signal then traveled DIRECTLY to the computer via USB, and the Output 2 signal was sent to a Tech21 PA-60 amp/cab, mic'd, and then sent in via another input on my FF800. If ANYTHING, the Mic'd signal should be late, as it needs to make one more pass through an interface to get into the DAW.

The DAW itself: Hmmm. Buffer is set as low as it will go in Logic (32 samples - VERY small - translates to about 725 MICROseconds). Both signals (USB and Mic'd) are being processed through this same buffer, yet the USB arrives late.

Put in a simpler context, a signal is generated (guitar), sent to the Axe-FX for processing, Output 1 goes to USB, Output 2 goes to a speaker that is mic'd and then recorded. The USB track arrives later than the mic'd audio. Analysis - USB introduces latency not found in the other routing chain.

Pete


How the fuck is that possible. I can´t even record axe-usb and analog through my fireface at the same time.
In logic I have to choose either my fireface or the axe usb in the preferences as input.
I don´t notice a 100ms latenzcy on my macbook. That would sound like a retard playing , weird anyhow.

The only strange thing I have notised is that the axe digital output clips when then is 10dB missing for logic to clip.
 
Ian -

I'd be very interested to see your Logic example!

Do you think it makes a difference that the USB ins/outs of the Axe-Fx II are combined into a single Aggregate device, which also includes my FF800?

Pete

Absolutely that aggregate device is not helping you out. I don't do an aggregate. Logic lets you set the input and output device separately. So I just set input to the Axe In and output to Axe Out. Works very well.

I'll get you an example...somehow...by end of day Friday.
 
Back
Top Bottom