[wdmaudiodev] Re: Software-only GFX APO

  • From: Hakon Strande <hakons@xxxxxxxxxxxxxxxxxxxxx>
  • To: <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Mon, 2 Jul 2007 09:31:30 -0700

Dear Sir,

If you want to insert your processing value-add in the Windows Vista
System Effects infrastructure there are two approved methods: 

One is to install the effects through a 3rd party audio device vendor's
INF. This means you have to sell your product to the IHV and they
include it in their offering.

The second method is to use your own INF and include one of the two
class driver INFs in yours. Effectively the user will replace the 3rd
party USB Audio or HD Audio driver with the class driver and your
value-add will load on top of the class driver.

Any other approach to loading components into the System Effect
infrastructure is strongly discouraged and will not be signed by
Microsoft and can break at any time through updates to the OS from
Windows Update.

The System Effect infrastructure is designed to improve transparency,
discoverability and control over the components in the streaming
pipeline for users and applications and is not a new filter driver
model.

Sincerely,

Hakon Strande | Windows Sound Team PM


-----Original Message-----
From: wdmaudiodev-bounce@xxxxxxxxxxxxx
[mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Chunk Systems
Sent: Sunday, July 01, 2007 11:47 PM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Software-only GFX APO

Hi all,

I'm trying to figure out whether its possible to create a software-only
GFX
APO so that a customer can download and install a software package which
affects all audio coming out of the machine. Would it feasible to create
an
install program which:
1. registers a new APO dll.

2. creates or overwrites the following registry key with the CLSID of
the
new APO:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\MMDevices\Audio\Render\<e
ndpo
int>\FxProperties\d04e05a6-594b-4fb6-a80d-01af5eed7d1d},2

3. creates or overwrites the following registry key with the CLSID of
the
new property page:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\MMDevices\Audio\Render\<e
ndpo
int>\FxProperties\d04e05a6-594b-4fb6-a80d-01af5eed7d1d},3

4. the original APO calls through to whatever APO was originally
installed
and then applies its effect afterwards. 

Now, I realise that the APO system is designed for IHVs, but does
anybody
have any comments on the feasibility of this approach?


On a related question, Microsoft's sysfx.doc document says:
Note: The INF does not modify the FXProperties registry key directly.
Instead, it modifies the FX key as shown in the preceding example, and
the
value is then migrated to the FXProperties key in the MMDevice section.

In other words, at some point, the APO settings from
HKLM\SYSTEM\CurrentControlSet\Control\DeviceClasses\...
to
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\MMDevices\...

Is anybody able to explain when or how this migration takes place, and
which
keys are migrated?

Any help you can offer would be greatly appreciated.

Thanks,
Richard Cartwright
Chunk Systems
http://www.chunksystems.com

******************

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

URL to WDMAUDIODEV page:
http://www.wdmaudiodev.com/


******************

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

URL to WDMAUDIODEV page:
http://www.wdmaudiodev.com/

Other related posts: