About USB audio driver

When i connect an external sound card to the PC from an USB interface. It loads the sound driver, and usbaudio.sys, ks.sys, etc etc, arranged/ordered in a stack. The windows waveform and the directx provide the data that is coming from the primary sound driver, but since this external sound card is connected to the PC from USB, does the USB audio.sys provide me with a chance to access the data coming from it directly using setupapis rather than using directx/wave apis and getting the data from the sound card/topmost driver in the stack?

xxxxx@gmail.com wrote:

When i connect an external sound card to the PC from an USB interface. It loads the sound driver, and usbaudio.sys, ks.sys, etc etc, arranged/ordered in a stack. The windows waveform and the directx provide the data that is coming from the primary sound driver, but since this external sound card is connected to the PC from USB, does the USB audio.sys provide me with a chance to access the data coming from it directly using setupapis rather than using directx/wave apis and getting the data from the sound card/topmost driver in the stack?

I’m not sure what you mean. As with any sound driver (except for WaveRT
drivers), you can write a filter driver to intercept the audio stream at
several points along the way. A lower filter to usbaudio.sys can grab
the isochronous URBs coming directly from the host controller. An upper
filter to usbaudio.sys can grab data from the kernel streaming ioctls.

However, why do you want this? It’s only useful in specialized
circumstances.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.