On Thu, 29 Aug 2013, Alan Stern wrote: > On Thu, 29 Aug 2013, James Stone wrote: > > > On Wed, Aug 28, 2013 at 7:46 PM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote: > > > On Wed, 28 Aug 2013, Clemens Ladisch wrote: > > > > > >> Sorry, what I said applies more to explicit sync endpoints. When using > > >> implicit sync, a playback URB is submitted for each completed capture > > >> URB, with the number of samples per packet identical to the > > >> corresponding capture packet, so the parameters must be identical. > > > > > > Got it. Below is an updated patch. > > > > > > James, the problem you encountered was most likely a result of the > > > faulty treatment of capture endpoints that Clemens pointed out. It was > > > quite obvious in the usbmon traces that the unpatched driver used 8 > > > packets per URB whereas the patched driver used 22. This updated patch > > > should fix that problem. > > > > > > > Works fine. With this, it is possible to get clear playback at 64 > > frames/period too. With vanilla 3.10.9, there was some glitchy > > distortion to the sound at that latency, so this seems to be an > > improvement. > > That's good. What happens if you push frames/period even lower? > > Daniel and Eldad, more testing of the most recent proposed patch would > be welcome. Sorry for the long response time but I've been busy lately. I see a good improvement on my card (M-Audio C400, implicit feedback) - using a 48 frame period (@48kHz) I get no xruns with jack running without clients. Without the patch, the above test generates constant xruns. I tested the patch with mainline 3.11.0, and let jack run about 5 minutes. Thank you for working on this! FWIW, feel free to add: Tested-by: Eldad Zack <eldad@xxxxxxxxxxxxxxx> Cheers, Eldad -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html