The "real" USB Audio device should be able to describe itself. First thing you need to do is to get the Config descriptor from USB and start parsing (descriptors are well described in the USB Audio Specifications available from USB.org) ...unless you already know the configuration of your target device in which case you can hard code a KS topology which reflects that. You need to create KS Pin structures from the descriptors that reflect the format capabilities and tie them to your topology. You need to create support for the Isochronous endpoints and tie them to the pins you created so you can stream audio data from the pin data structures to the device supporting all KS pin state transitions. You need to pass the audio data from the input pins to the system and the out pins to the device. You have to accurately reflect position information for those streams through pin properties. You need to adjust device controls through topology/filter properties (should there be any) through the control endpoint. You need to be able to handle power state changes while you are streaming as well as not. Dozens of other details as well. Like Tim said, it's no easy task and even if undertaken it is difficult to get correct. (I should know :-)) Good luck if you choose to pursue this, DJ -----Original Message----- From: wdmaudiodev-bounce@xxxxxxxxxxxxx [mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of hetao su Sent: Friday, March 30, 2012 2:49 AM To: wdmaudiodev@xxxxxxxxxxxxx Subject: [wdmaudiodev] Re: how to implement a USB audio driver! Dear all: As I said before: MSVAD and Avshws They are all to simulate a hardware,and I don't know how to implement a class for describing the real usb audio device. ****************** WDMAUDIODEV addresses: Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx Subscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe Unsubscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe Moderator: mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx URL to WDMAUDIODEV page: http://www.wdmaudiodev.com/ ****************** WDMAUDIODEV addresses: Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx Subscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe Unsubscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe Moderator: mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx URL to WDMAUDIODEV page: http://www.wdmaudiodev.com/