[wdmaudiodev] Re: Capturing audio output using a "kernel mode filter driver"

  • From: Matthew van Eerde <Matthew.van.Eerde@xxxxxxxxxxxxx>
  • To: "wdmaudiodev@xxxxxxxxxxxxx" <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Mon, 23 May 2011 17:23:59 +0000

As far as I can see TotalRecorder is just a vanilla virtual WDM audio driver, 
which is not signed by WHQL.  This means it won't work with (certain kinds of) 
DRM'd audio, despite their claims, although it will work just fine with 
non-DRM'd audio.

-----Original Message-----
From: wdmaudiodev-bounce@xxxxxxxxxxxxx 
[mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Tim Roberts
Sent: Monday, May 23, 2011 10:17 AM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: Capturing audio output using a "kernel mode filter 

Paul Titchener wrote:
> a generic audio device via registry hacking (i.e. not via the driver 
> .INF
> file) is a big NO-NO according to official MS policy.

Microsoft policy restrictions have rarely had any effect on device 

> I plugged in a USB audio device after TotalRecorder had already been 
> installed and it captured audio played back to that new device also. 
> It would be pretty tricky to have the sAPO approach work for this case.

A background application could do this with the loopback interface.

> They claim they are using a "kernel mode filter driver". Searching on 
> that term leads you to some general MS descriptions of a filter driver 
> being an optional component that you can create that sits between the 
> kernel level standard driver and the higher level calls for the 
> purposes of adding additional functionality.
> But the examples all seem to be for general purpose file reading and 
> writing, not audio systems.

The term "filter" is overloaded in the Windows kernel world, but a PnP filter 
driver can be inserted between any two kernel drivers.  I have written several 
filter drivers for USB audio devices that didn't quite meet the USB Audio Class 
spec, in order to fake the configuration stream.  The filter driver concept 
works very nicely for intercepting audio data for many audio drivers (including 
USB Audio), but it doesn't do anything for WaveRT devices, because the data 
doesn't flow through any kernel components.  The filter driver would have to 
periodically poll the circular buffer pointers to watch for new data.  That's 
ugly, but I'll bet that's what they did.

> Is it possible that there is an undocumented method for adding a 
> "filter driver" to the windows audio system and these guys figured out how to 
> do it?


Tim Roberts, timr@xxxxxxxxx
Providenza & Boekelheide, Inc.


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


X3P2EZu�޲Ǭ>�-��,j�j)m�fj�b�ׯ~���+-���J��r��zf���0vf�v*z�ު笵��zX���+�˛��-

Other related posts: