[wdmaudiodev] Problems with wrapping the Microsoft APO (was Multiple APOs in Vista?)

  • From: "Michael R. Preston" <mike@xxxxxxxxxxxxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Wed, 04 Oct 2006 14:23:31 -0700

Jeff,
The more I've looked into wrapping the Microsoft APO, the more difficult I find it. Sure, Microsoft gives you examples on how to do it, but the manner in which it's supported is extremely limiting for the IHVs. I'm not sure about the multiple FX key issue from the APO standpoint, but from the GUI standpoint, you'd have to figure out some way to incorporate the Microsoft GUI and your own so they both show up in the Sound control panel property pages. My gut feeling is that this is impossible. On the subject of Microsoft requiring IHVs to support all the Microsoft APO functionality, this is taken from page 16 of the newer Vista_SysFX document:


"Independent hardware vendors (IHVs) who are developing their own drivers for HD Audio and USB audio must implement all the audio system effects functionality that is provided by the in-box sAPOs."

That would be great if Microsoft allowed the IHVs to not only reuse parts of the Microsoft APO, but parts of the corresponding GUI as well. For example, the Room Correction feature has a very complicated wizard GUI, and has no documentation on how to reuse it. From page 23 of the Vista_SysFX document:

"Room correction uses a profile that the Room Calibration Wizard generated. This profile is stored as a binary blob. The format of the blob is not currently published."

This means that it's impossible to wrap the Microsoft APO using your own GUI if you want to reuse the Room Correction feature, and if Microsoft is going to require IHVs to provide this feature, they either have to reuse the entirety of Microsoft's property page GUI, or implement their own room correction functionality in their APO. I find this totally unacceptable. According to Microsoft, it should be possible. From page 17 of the Vista_SysFx document:

"Strategy A
...
o Seamlessly integrate their custom effects with the Windows Vista effects.
o Implement their own UI to control their effects and the effects implemented by the Windows Vista sAPOs."


On a related note, the same goes for Microsoft's speaker configuration GUI. If an IHV wants to implement Bass Management and Speaker Phantoming in their own APO, how can you replace the Microsoft GUI for speaker configuration? There is currently no way to do it. Even if you implemented your own separate GUI, there's no way to get rid of Microsoft's GUI. So you either have to do it Microsoft's way, or have something that's extremely confusing for the user because there are two GUIs - one of which isn't hooked up to anything.

Mike

wdmaudiodev-bounce@xxxxxxxxxxxxx wrote:
Hi everyone,

In the APO documentation "Custom Audio Effects in Windows Vista", there
is a discussion about how to install multiple APOs for a particular
endpoint. This is done by adding additional FX keys, under FX\1, FX\2,
and so on. (This is on page 10 in the doc.)

However, in the later document "Reusing Windows Vista Audio System
Effects", it implies that an sAPO must implement the original MS APO
audio effects (Virtual Surround, Speaker fill, etc.). The suggested
method for this is to wrap the original MS APO into your own APO,
passing the audio to it as appropriate.

This seems to be at odds with the original document. Instead of wrapping
the APO, why can't a second APO just be added in the FX\1 registry key?
In that case, you can just leave the MS APO at FX\0 and still fulfill
the requirements that the original APO functionality is provided.

Is this an acceptable solution? Or are multiple APOs no longer allowed
to be installed for a particular endpoint?

Thanks for any info,
Jeff
******************

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/




-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | Mike Preston | Home/Office: (360)756-1655 | | E-mail: mike@xxxxxxxxxxxxxxxxxxx | Cell: (360)303-9331 | |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| | The man who follows the crowd will usually get no | | further than the crowd. The man who walks alone is | | likely to find himself in places no one has ever been. | | -- Alan Ashley-Pitt | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ******************

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: