Windows Vista allows third-party audio hardware manufacturers to include custom host-based digital signal processing effects as part of their audio driver's value-added features. These effects are packaged as user-mode System Effect Audio Processing Objects (sAPOs).
There are three insertion points for sAPOs: pre-mix render, post-mix render, and capture. Each logical device's audio engine supports one instance of a pre-mix render sAPO per stream (render LFX) and one post-mix render sAPO (GFX). The audio engine also supports one instance of a capture sAPO (capture LFX) that is inserted in each capture stream.
This white paper describes the render LFX and GFX sAPOs that are included with Windows Vista. It also describes two strategies that third-party hardware manufactures can implement to create custom implementations that reuse the inbox sAPOs.
This information applies to the Windows Vista operating system.
Included in this white paper:
| • | New Audio Features for Windows Vista |
| • | Reuse of Windows Vista sAPOs by Third Parties |
| • | Detailed Guidelines for Reusing Windows Vista sAPOs |
| • | General Guidelines for Custom Audio System Effects |
| • | Runtime Considerations When Reusing Windows Vista sAPOs |
Audio System Effects Code Samples
The code sample download package contains samples that manufacturers can download and use.
Purpose of the samples and their use:
| • | The three samples are examples of how third parties can create their LFX and GFX sAPOs by wrapping the Windows Vista System Effects sAPOs inside their custom sAPOs. |
| • | All three preserve the Windows audio system effects sAPO's functionality by hosting it inside a custom sAPO. |
| • | All three samples assume that the Windows audio effects' UI is not replaced. |
The table below lists the characteristics of the three samples: Swap, Compress, and Spkrfill.
| Sample | Swap | Compress | Spkrfill |
Replaces LFX | Yes | Yes | Yes |
Replaces GFX | Yes | No | No |
Resembles the audio engine custom audio system effects sample | Yes | No | No |
Adds a new custom audio system effects feature | Yes | No | No |
Assumes a separate UI | Yes | No | No |
Replaces Windows Vista custom audio system effects features | No | Yes | Yes |
Reads Windows Vista custom audio system effects properties | No | Yes | Yes |
Uses variable processing ordering | Yes | No | Yes |
Shows Microsoft effect ordering | No | No | Yes |
Changes the number of channels | No | No | Yes |
Uses complex format negotiation | No | No | Yes |
Uses dynamic on/off | Yes | Yes | No |