Tech Support > Microsoft Windows > Drivers > Re: Is it possible to create a user mode virtual sound card driver?
Re: Is it possible to create a user mode virtual sound card driver?
Posted by Maxim S. Shatskih on May 8th, 2005


Yes. WINMM-style or DirectShow driver.

--
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
maxim@storagecraft.com
http://www.storagecraft.com



Posted by ziphnor on May 8th, 2005


That was fast! Thanks a lot for responding.

You wouldnt happen to know some good references on creating either of these
types of drivers, would you?

I assume information on DirectShow drivers is in the DirectX SDK, but a
quick search in the MSDN docs doesnt seem to mention DirectShow drivers. Is
a DirectShow filter the same as/related to a DirectShow driver?

Does the DDK docs have information on creating WINMM style drivers, i cant
seem to find it?

I will keep searching, but if you happen to know some references off-hand i
would be much obliged.

Thanks again.


"Maxim S. Shatskih" <maxim@storagecraft.com> wrote in message
news:%23NI$jb7UFHA.1404@TK2MSFTNGP09.phx.gbl...


Posted by ziphnor on May 8th, 2005


So far i have been unable to dig up any useful information, but maybe im
looking in the wrong places?

If someone can help me find any documentation regarding this i would really
appreciate it. I thought something like this would be better documented(but
then again, perhaps it is, and im just to dumb to find it).


"ziphnor" <ziphnor@mailcan.com> wrote in message
news:%23TpUwt7UFHA.1404@TK2MSFTNGP09.phx.gbl...


Posted by BobF on May 8th, 2005


On Sun, 8 May 2005 17:21:05 +0200, ziphnor wrote:

You're not alone ... Frustrating to say the least. In the third-party
arena it seems that the only thing people are writing are books on C# and
other .NET goodies.

DirectX has new versions too fast for writers to keep up with I guess.
Unless you want to write a game ...

Walter's book is the best really technical read I've found in a long time.
Too bad its not on the subject we're after.

Hey, Walter! How 'bout a user-mode driver book with examples on every
imaginable type of software device I could possibly need? <VBG>

Posted by ziphnor on May 8th, 2005


Maybe i am a bit naive, but i thought that there would be some well defined
interface i would have to implement, and that would basicly be it.

Its hard to get a good overview of how drivers in Windows NT work, there is
plenty of detail in the DDK, but it seems every part of it assumes
familarity with some other part, and it seems there are 20 different ways to
do everything I've yet to find out how drivers identify themselves to the
OS, and which methods they must implement for different device types. Maybe
its because im new to this, but the DDK docs seems structured in a very
weird way.

Even the 'msvad' kernel mode example is pretty confusing, its impossible to
tell which parts of it are there due to necessity, and which are there
because of the programmers design decisions. And its not like it has an
overwhelming amount of comments

Ive ordered " Programming the Microsoft Windows Driver Model" from the local
library to see if it can help.
Maybe its easier after all to make a kernel mode drivers, seeing as thats
what there is most information available for?

What kind of user mode driver are you trying to develop?

Thanks for responding btw.

"BobF" <rNfOrSePeAzMe@charter.net> wrote in message
news:6x8uk58k2f7s.ucmc7v0piar7.dlg@40tude.net...


Posted by BobF on May 9th, 2005


On Sun, 8 May 2005 21:47:32 +0200, ziphnor wrote:

I'm still trying to figure out if user mode would make more sense, so I'm
not really building yet. A purely software MIDI interface is what I'm
working towards.

I'm almost convinced user mode is the way to go because I want to
manipulate the data in addition to routing in-to-out.

I think the DDK hints at what could be done with DirectShow/DirectSound by
refering to port/miniport pairs as filters. I'm hoping to prototype a
DirectShow filter in the next few days to determine whether or not I have
it straight in my head yet.

The reason I started down the DDK path to begin with is because I want the
driver to be visible to any app just like a hardware interface would be.

It's time to try this stuff out and test my understanding!

Posted by Tobias Erichsen on May 9th, 2005



"ziphnor" <ziphnor@mailcan.com> schrieb im Newsbeitrag
news:%23TpUwt7UFHA.1404@TK2MSFTNGP09.phx.gbl...
If you have access to old MSDN-libraries, you should take a look at the
NT 4.0 DDK. There is example code for the user-mode portion of multi-
media drivers (sound, mixer,midi) - I have used this ddk to develop a
virtual MIDI driver and it works pretty well.

Tobias



Posted by ziphnor on May 9th, 2005


Thanks for the tip. Is the old MSDN libraries available through the MSDN
subscriber downloads or is there somewhere else i can find them?

"Tobias Erichsen" <t.erichsen@gmx.de> wrote in message
news:d5n3hi$2qs$1@news1.wobline.de...


Posted by ziphnor on May 9th, 2005


I would be very interested in hearing how things work out for you, good luck


"BobF" <rNfOrSePeAzMe@charter.net> wrote in message
news:5r63mc6k5omg.1qnxqf824u7pj.dlg@40tude.net...


Posted by Tobias Erichsen on May 10th, 2005



"ziphnor" <ziphnor@mailcan.com> schrieb im Newsbeitrag
news:%233ClOuMVFHA.2616@TK2MSFTNGP14.phx.gbl...
I really don't know. We have subscribed MSDN for a long time, so we have
quite an extensive library
of old SDKs & DDKs here - sorry that I'm not of much help in this respect...

Tobias