Hello all,
I am developing an APO to run in Windows Audio Engine for my USB headset
device. I need to support Windows 7 and my APO changes the Input->Output
channel count so via its .inf file I am registering it as LFX for Windows
7/8/8.1 and SFX for Windows 10.
I want to define a limit to the maximum number of instances of my APO,
primarily for DSP performance reasons. I can do this in code, e.g. using
CRegAPOProperties in my APO's constructor or alternatively counting
instances and running DSP processing accordingly... I'd like a better
approach than hard-coding such.
I note the existence of the "MaxInstances" Registry Key at
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AudioEngine\AudioProcessingObjects\{MY_APO_GUID}
and this looks like it will do the job for me so I could e.g. as part of my
installation write this key with the value I want...
My compound question is:
1. Will Windows be ok with my doing this? (As in: is this "legal" for
an APO?)
2. With my instance-limited APO active, what will Windows Audio Engine
do when the User exceeds the max? (my guess is it simply won't instantiate
the APO on that stream).
Thanks!
Culann