locked
Emulate a UVC device from a WDF driver? RRS feed

  • Question

  • I have a DSP that can serve a stream of video to a UMDF or KMDF driver.  Is there anyway for me to fake windows into thinking my non-USB device and driver combo is actually a USB Video Class device?  The key is that the inbox driver would need to load on the device (usbvideo.sys).  Doing this will give me access to the DXVA subsystem and also has a nice connection with DirectX inside a Universal App.  Perhaps an USB bus filter would work? 

    https://msdn.microsoft.com/en-us/library/windows/hardware/ff568653(v=vs.85).aspx

    When vendors use the Microsoft-supplied USB Video Class driver, they provide only the hardware. Microsoft provides all driver support.

    Optionally, vendors can extend the USB Video Class driver to add device-specific functionality.

    The USB Video Class driver stack is shown in the following diagram:

    Diagram illustrating the USB Video Class driver stack

    Tuesday, May 26, 2015 10:49 PM

Answers

  • there is no easy path. Either you enumerate your own pdo and emulate everything the uvc driver expects, essentially emulate the USB hub driver. No small task. Or you can write your own steam class/ks miniport without using the uvc driver


    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Wednesday, May 27, 2015 3:02 AM

All replies

  • there is no easy path. Either you enumerate your own pdo and emulate everything the uvc driver expects, essentially emulate the USB hub driver. No small task. Or you can write your own steam class/ks miniport without using the uvc driver


    d -- This posting is provided "AS IS" with no warranties, and confers no rights.

    Wednesday, May 27, 2015 3:02 AM
  • Thanks Doron,

    I will prototype an avstream driver going to my universal app.  Should work just like a UVC device performance wise.  And with the samples it should not take very long to try.

    Wednesday, May 27, 2015 5:29 PM