Behringer WING usb audio - cyclic xruns dependent on periods/buffers

Ben Bell bjb-alsa-devel at deus.net
Sat Dec 5 15:43:56 CET 2020


> > Like I said in the initial email, it feels like some sort of clock drift
> > problem, where we're managing very slowly to collect more samples than
> > we're reading -- to the tune of about 1 extra every few cycles -- and
> > nothing on the consumer side is ever managing to compensate for that.
> > I'm not even sure how that sort of drift would be possible though. Seems
> > surprising.
[...]

> At least you can try the latest patch set destined for 5.11, which
> should improve the cases for the implicit feedback.

Aha! This actually was the key piece of information I needed. I haven't
tried 5.11 or the latest patch set yet, but googling "implicit feedback"
and learning abobut it led me to conclude that the Wing needs an entry in
the quirks list in set_sync_ep_implicit_fb_quirk to properly enable it:

--- sound/usb/pcm.c.orig        2020-11-22 23:36:08.000000000 +0000
+++ sound/usb/pcm.c     2020-12-05 08:40:21.639600074 +0000
@@ -340,6 +345,7 @@
                ep = 0x81;
                ifnum = 3;
                goto add_sync_ep_from_ifnum;
+       case USB_ID(0x1397, 0x050b): /* Behringer Wing */
        case USB_ID(0x0763, 0x2080): /* M-Audio FastTrack Ultra */
        case USB_ID(0x0763, 0x2081):


A week's worth of debugging and learning yielded a one line patch ;)

Since adding that I've been running at p=128 n=2 for much of the day with
no tweaking of interrupts, and no xruns at all (and at 44.1kHz, because that's
what this project was originally recorded at). With further tuning that might
come down further because I was able to run in Capture Only at p=8(!) n=2, so
it feels like there's still scope for more tweaking.

Thanks for the help,
bjb




More information about the Alsa-devel mailing list