[LAU] jdelay - measured latency of a usb interface

Clemens Ladisch cladisch at fastmail.net
Wed Apr 1 05:47:40 EDT 2009


Ken Restivo wrote:
> On Tue, Mar 24, 2009 at 08:49:42PM +0100, Frank Barknecht wrote:
> > Arnold Krille hat gesagt: // Arnold Krille wrote:
> > > > I'm no expert on this, but IMO ALSA-dev Clemens Ladisch is one. He wrote:
> > > >   "Due to how the USB protocol works, all USB audio devices have the same
> > > >   latency."
> > > 
> > > I know that clemens knows his stuff. But he is talking about the usb-protocol 
> > > here. 
> > 
> > He is saying that because the USB protocol works the way it works, all USB
> > audio devices have the same latencies. I don't know how that statement is open
> > to a different interpretation than that all USB audio devices have the same
> > latency. :)

Well, I was simplifying somewhat.  In the context of that mail, the
40 ms latency was not the responsibility of the USB device, so
switching to another one would not help.

When using the same sample rate and the same buffer/period settings,
that data that the USB audio driver sends always uses the same timing,
regardless of which device is used.

> > I know, that the manufacturers of USB cards like to brag with their hardware
> > being faster than that of the competition,

These differences do exist, but mostly because of differences in
the (Windows) drivers.

> 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?

Yes.  The theoretical minimum latency is at least two or three
milliseconds (depending on which assumptions you make); the additional
latency introduced by the DAC itself is much lower than that.
(With kernel 2.6.31 or so, the protocol-related latency of high-speed
(USB 2.0) audio devices can be reduced to one eighth in some cases.)

It is, of course, possible to have additional latency due to DSP
processing or something like that, but nowadays, these things are done
in software.


Best regards,
Clemens



More information about the Linux-audio-user mailing list