[wdmaudiodev] Re: Which audio driver model?

  • From: Matthias Moetje <moetje@xxxxxxxxxxxx>
  • To: "'wdmaudiodev@xxxxxxxxxxxxx'" <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Fri, 26 Sep 2008 18:28:57 +0200

Matt,

thanks very much for the info! I had thought PortCls or AvStream was a kind
of pre-WDM model.

I’ll go for a start with the MSVAD and I fear I’ll be back with more questions 
soon ;-)


Thanks again,

Matthias Moetje
[cid:image001.gif@01C92005.BC973040]

TERASENS GmbH
Augustenstraße 24
80333 Munich
GERMANY



Phone:
Fax:
e-mail:
Web:

+49.89.143370-0
+49.89.143370-22
info@xxxxxxxxxxxx<mailto:info@xxxxxxxxxxxx>
www.terasens.com<http://www.terasens.com/>






From: wdmaudiodev-bounce@xxxxxxxxxxxxx 
[mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Matt Gonzalez
Sent: Freitag, 26. September 2008 05:06
To: wdmaudiodev@xxxxxxxxxxxxx
Cc: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Which audio driver model?

Hello,

WDM isn't an audio driver model.

WDM stands for Windows Driver Model. It refers to the generic Windows driver 
development framework first introduced with Windows 98 and Windows 2000.  WDM 
is for any type of kernel mode device driver. Wikipedia has a good article.

So any audio driver for Win2K/XP/Vista is a WDM driver.

All of the MSVAD samples are based on PortCls using WaveCyclic.

Matt

On Sep 25, 2008, at 7:53 PM, Matthias Moetje 
<moetje@xxxxxxxxxxxx<mailto:moetje@xxxxxxxxxxxx>> wrote:
Matt and Tim,

thanks very much for your assistance.

So what about the WDM model? Do you any experience with this?
Do I assume correctly that the MSVAD sample in the current WDK
is WDM based, while the MSVAD from older DDKs is PortCls based?

Best regards,

Matthias Moetje
<image001.gif>

TERASENS GmbH
Augustenstraße 24
80333 Munich
GERMANY



Phone:
Fax:
e-mail:
Web:

+49.89.143370-0
+49.89.143370-22
info@xxxxxxxxxxxx<mailto:info@xxxxxxxxxxxx>
www.terasens.com<http://www.terasens.com/>





From: wdmaudiodev-bounce@xxxxxxxxxxxxx<mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx> 
[mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Matt Gonzalez
Sent: Dienstag, 23. September 2008 02:36
To: wdmaudiodev@xxxxxxxxxxxxx<mailto:wdmaudiodev@xxxxxxxxxxxxx>
Subject: [wdmaudiodev] Re: Which audio driver model?

Hello,

I have developed drivers using both PortCls and AVStream.

AVStream is better for handling external hardware since it can handle surprise 
removal.  It sounds like your solution is software only, so that doesn't matter.

Of the two that I have used, AVStream is more flexible but harder to implement. 
 There aren't any good sample drivers, so it's much harder to get started, 
especially if you don't have any experience with audio drivers.  In addition, 
an AVStream audio driver has to implement quite a bit of the functionality that 
PortCls does for you.

If I were you, I would start with the MSVAD sample in the DDK.

I don't have any experience with Stream Class.

The main thing to keep in mind is that all of these are just different methods 
for presenting a kernel streaming filter with the correct set of pins.  They 
use different calls and data structures to describe the same thing.  In my 
opinion, this really isn't obvious just from reading the documentation or the 
sample code.

Matt

Matthias Moetje wrote:
Hello all,

I am new to this list and joined because I need some advice on creating an 
audio driver.

I realized, that there are quite a few models available to develop an audio 
driver (wdm, AVStream, PortCls, StreamClass) and I have no idea which will be 
the right one.

Let me give you some more information: We have developed a TAPI service 
provider for the SIP protocol (VoIP). A TAPI service provider (TSP) is a kind 
of middleware and there are two ways a TSP can provide access to the audio 
streams to the consuming application: Either an MSP (Media Service Provider, 
requires TAPI3) or an audio driver (used with TAPI2).
We already have implemented the MSP. Actually it’s building a DirectShow 
filtergraph (consisting of RTP sink/source filter, codec filters) and provides 
an endpoint pin to the application.

Now we want to develop an audio driver. Ideally this audio driver would use the 
existing MSP to instantiate the filtergraph and model the endpoint pin as wave 
device.

So, the question is: Which would be the best suited audio driver model to 
accomplish this task?


Best regards,

Matthias Moetje
<image001.gif>

TERASENS GmbH
Augustenstraße 24
80333 Munich
GERMANY



Phone:
Fax:
e-mail:
Web:

+49.89.143370-0
+49.89.143370-22
info@xxxxxxxxxxxx<mailto:info@xxxxxxxxxxxx>
www.terasens.com<http://www.terasens.com/>





GIF image

Other related posts: