<html><head><style type='text/css'>p { margin: 0; }</style></head><body><div style='font-family: Times New Roman; font-size: 12pt; color: #000000'><br> In our experience, the xHCI emulation in VirtualBox works well for USB devices like webcams and headsets, and some professional audio devices are reported to work as well (e.g. <span class="posthilit">Focusrite</span> Scarlett Solo, Roland Duo-Capture). Not every device works, but Linux usbfs is not slow.<br><br> Whether VMs are suitable for any real-time workloads at all is a different question.<br><br>     Regards,<br>        Michal<br><br>----- Original Message -----<br>From: a.h.yakovlev@gmail.com<br>To: michael.thayer@oracle.com<br>Cc: vbox-dev@virtualbox.org<br>Sent: Tuesday, September 5, 2017 7:42:09 AM GMT +01:00 Amsterdam / Berlin / Bern / Rome / Stockholm / Vienna<br>Subject: Re: [vbox-dev] Linux PCI-passthrough kernel module cleanup<br><br><div dir="ltr"><div><div><div>Hi Michael,<br><br></div>Well, basically, I'm running WIndows 10 guest and have a few USB devices (professional audio card + web cams), which do not work in the guest at all (though they appear in Windows and have correct setup). Since other USB devices work fine (like USB mass storage), I was wondered why it so. Brief investigation on VBox sources showed, that it seems, that VBox uses USBFS-based interface for backend on Linux host. In general case, it does not suit for real-time data (like audio/video streams). In such case it's better to have a Linux kernel driver, which handles all actual URB traffic, and backend make direct calls to that driver (like vhost-based drivers do). As I can understand, VBox allows to make direct call to kernel modules through COM-interfaces. That's why I decided to play with it and replace current implementation of Linux USBProxyDevice implementation. :)<br><br><br></div>Best regards,<br></div>Anton<br><div><div><br><div class="gmail_extra"><br></div></div></div></div>
</div></body></html>