[LAU] jdelay - measured latency of a usb interface

Frank Barknecht fbar at footils.org
Wed Mar 25 04:40:16 EDT 2009


Hallo,
Ken Restivo hat gesagt: // Ken Restivo wrote:

> Is it possible that the USB protocol sets a *minimum* on latency,
> and thus any speed improvements in the USB hardware are essentially
> moot, limited by this lower bound imposed by the USB protocol?

I thought about this a bit more now - and USB devices may indeed have
different latencies at their audio outputs (hear, hear...)

As I understand it, the USB bus, because it is isochronous, kind of
guarantees that all USB devices get their audio data with the same
latency. So the speed of audio data over the USB cable doesn't depend
on the device used. 

But after that, as Arnold noted, any USB card can of course do
different things to the audio data. As an extreme example consider a
USB audio device with a builtin delay effect, which would delay
all audio output by 2 minutes. Then you'd have a latency of 2 minutes
in addition to the USB bus latency. :)

ADC/DAC converters don't have such extreme delays - they generally are
designed to work with minimal latencies. But nevertheless they add
latency as well of course because they do filtering etc. I don't know
in what kind of magnitude this additional latency is, but I actually
suppose that even cheap dacs work comparably fast with better ones.
And I think, most cards use the same Burr-Brown codec variants
anyway. 

> FWIW, I have used 3 different USB interfaces, and even though
> I did not test them with JDelay, all worked identically with the
> same jack settings (-n3 -p128) and resulting latency.

Yeah, I have the same results with my two cards, but without measuring
the actual audio latency with something like JDelay, you won't be able
to tell the adc/dac latency. What jack tells you is just the "USB
protocol latency", which is the same for all devices.

Ciao
-- 
 Frank Barknecht            Do You RjDj.me?          _ ______footils.org__



More information about the Linux-audio-user mailing list