IAudioProcessingObject interface (audioenginebaseapo.h)

System Effects Audio Processing Objects (sAPOs) are typically used in or called from real-time process threads. However, it is sometimes necessary to use an sAPO in a non real-time mode. For example, when an sAPO is initialized, it is called from a non real-time thread. But when audio processing begins, the sAPO is called from a real-time thread. The IAudioProcessingObject interface exposes methods that enable a client to access the non real-time compliant parts of an sAPO.

The IAudioProcessingObject interface supports the following methods:

IAudioProcessingObject::GetInputChannelCount

IAudioProcessingObject::GetLatency

IAudioProcessingObject::GetRegistrationProperties

IAudioProcessingObject::Initialize

IAudioProcessingObject::IsInputFormatSupported

IAudioProcessingObject::IsOutputFormatSupported

IAudioProcessingObject::Reset

Inheritance

The IAudioProcessingObject interface inherits from the IUnknown interface.

Methods

The IAudioProcessingObject interface has these methods.

 
IAudioProcessingObject::GetInputChannelCount

GetInputChannelCount returns the input channel count (samples-per-frame) for this APO.
IAudioProcessingObject::GetLatency

The GetLatency method returns the latency for this APO. Latency is the amount of time it takes a frame to traverse the processing pass of an APO.
IAudioProcessingObject::GetRegistrationProperties

GetRegistrationProperties returns the registration properties of the audio processing object (APO).
IAudioProcessingObject::Initialize

The Initialize method initializes the APO and supports data of variable length.
IAudioProcessingObject::IsInputFormatSupported

This method negotiates with the Windows Vista audio engine to establish a data format for the stream of audio data.
IAudioProcessingObject::IsOutputFormatSupported

The IsOutputFormatSupported method is used to verify that a specific output format is supported.
IAudioProcessingObject::Reset

The Reset method resets the APO to its original state. This method does not cause any changes in the connection objects that are attached to the input or the output of the APO.

Requirements

Requirement Value
Target Platform Windows
Header audioenginebaseapo.h