Comment 32 for bug 1191603

Revision history for this message
Alan Stern (stern) wrote :

I'm not sure what you mean by frames and periods, but 21.3 ms is much larger than the minimum latency is supposed to be -- it is supposed to be around 1 - 2 ms. The usbmon trace attached to comment #25 showed three channels in use:

   The audio-out channel had a pipeline of 8 transfers, each containing 7 packets worth of data, with an interval between packets of 1 microframe (a microframe = 1/8 ms). Thus the latency was 7 ms.
(Each packet contained 96 bytes of data.)

   The audio-sync channel had a pipeline of 4 transfers, each containing 1 packet with an interval of 8 microframes, for a latency of 4 ms.

  The audio-in channel had a pipeline of 8 transfers, each containing 1 packet with an interval of 1 microframe, for a latency of 1 ms -- which was too small and resulted in the errors you saw. (Oddly, each packet had room for 1024 bytes of data but the device sent only 48 bytes.)

Maybe you can figure out from this how your frames and periods are related to the transfers, packets, and microframes used on the USB bus. In any case, if the number of packets in each of the audio-in transfers was increased to 2, the latency would go up to 2 ms and everything should work.

If it doesn't, please attach another usbmon trace showing the problem.