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:
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 |