[wdmaudiodev] Re: What would you Recommend for Testing a Virtual Audio Driver?

  • From: Matt Gonzalez <matt@xxxxxxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Mon, 26 Mar 2007 11:19:03 -0700

Hi Don-

I was wondering - are you familiar with Virtual Audio Cable? It's a driver that already does what you describe. What you're attempting is a daunting task.

To answer your other questions, I would simply use existing audio apps such as Sound Forge and Media Player - send a sine wave into your driver with Media Player, and record it with Sound Forge. Sound Forge has a built-in glitch detector that you can use to easily find errors.

Wave and DirectSound are both supported for 32 bit and 64 bit Windows. From your driver's point of view, there's no difference - you simply present a kernel streaming filter and the Windows APIs layer on top of that.

Good luck!


Don Bell wrote:
I am currently facing a very difficult task of concocting a working virtual audio device driver *prototype* within a week... It can crash, have lots of bugs, not fully featured, etc. but it has to be able to demonstrate simultenaous bidirectional input/output. My main problem is that the device driver is not tied to real hardware, but rather is supposed to receive its input from and play its output to an external (user mode) program. If it were a device driver for real hardware, I would simply fire up an existing application like Microsoft Sound Recorder (yes, that simple app that comes with any version of Windows), record myself, play it back and verify that I have satisfactory results (for this stage only - I know that tests should be much more thorough than this). But with no microphone & speaker, how do I test it without writing an entire win32 application? Is there a tool that can help test a device driver at such early stage? Something that would compare buffers, streams, etc.? And if I have to write such a test application, what would you recommend for using as an API? The old venerable waveOut/waveIn API or the newer & supported (for 64-bit) DirectSound API? Are there any special requirements for an audio device driver to support DirectSound (vs. supporting the old wave* API)? Please pardon my inability to hide my current ignorance in the subject. I could spend weeks reading the thousdands of pages of documentation of the various SDKs, but I am hoping to take a shortcut by using samples as much as possible, getting some general guidance and tips from you - and later invest significant time and effort in understanding things as thoroughly as possible (and practicle). Are these questions you could answer? Thanks in advance!


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


Other related posts: