ACX_STREAMAUDIOENGINE_CALLBACKS structure (acxelements.h)
The ACX_STREAMAUDIOENGINE_CALLBACKS structure identifies the driver callbacks for ACX stream audio engine operations.
Syntax
typedef struct _ACX_STREAMAUDIOENGINE_CALLBACKS {
ULONG Size;
PFN_ACX_STREAMAUDIOENGINE_ASSIGN_EFFECTS_STATE EvtAcxStreamAudioEngineAssignEffectsState;
PFN_ACX_STREAMAUDIOENGINE_RETRIEVE_EFFECTS_STATE EvtAcxStreamAudioEngineRetrieveEffectsState;
PFN_ACX_STREAMAUDIOENGINE_RETRIEVE_PRESENTATION_POSITION EvtAcxStreamAudioEngineRetrievePresentationPosition;
PFN_ACX_STREAMAUDIOENGINE_ASSIGN_CURRENT_WRITE_POSITION EvtAcxStreamAudioEngineAssignCurrentWritePosition;
PFN_ACX_STREAMAUDIOENGINE_RETRIEVE_LINEAR_BUFFER_POSITION EvtAcxStreamAudioEngineRetrieveLinearBufferPosition;
PFN_ACX_STREAMAUDIOENGINE_ASSIGN_LAST_BUFFER_POSITION EvtAcxStreamAudioEngineAssignLastBufferPosition;
PFN_ACX_STREAMAUDIOENGINE_ASSIGN_LOOPBACK_PROTECTION EvtAcxStreamAudioEngineAssignLoopbackProtection;
PFN_ACX_OBJECT_PROCESS_REQUEST EvtAcxStreamAudioEngineProcessRequest;
} ACX_STREAMAUDIOENGINE_CALLBACKS, *PACX_STREAMAUDIOENGINE_CALLBACKS;
Members
Size
The length, in bytes, of this structure.
EvtAcxStreamAudioEngineAssignEffectsState
The EVT_ACX_STREAMAUDIOENGINE_ASSIGN_EFFECTS_STATE callback.
EvtAcxStreamAudioEngineRetrieveEffectsState
The EVT_ACX_STREAMAUDIOENGINE_RETRIEVE_EFFECTS_STATE callback.
EvtAcxStreamAudioEngineRetrievePresentationPosition
The EVT_ACX_STREAMAUDIOENGINE_RETRIEVE_PRESENTATION_POSITION callback.
EvtAcxStreamAudioEngineAssignCurrentWritePosition
The EVT_ACX_STREAMAUDIOENGINE_ASSIGN_CURRENT_WRITE_POSITION callback.
EvtAcxStreamAudioEngineRetrieveLinearBufferPosition
The EVT_ACX_STREAMAUDIOENGINE_RETRIEVE_LINEAR_BUFFER_POSITION callback.
EvtAcxStreamAudioEngineAssignLastBufferPosition
The EVT_ACX_STREAMAUDIOENGINE_ASSIGN_LAST_BUFFER_POSITION callback.
EvtAcxStreamAudioEngineAssignLoopbackProtection
The EVT_ACX_STREAMAUDIOENGINE_ASSIGN_LOOPBACK_PROTECTION callback.
EvtAcxStreamAudioEngineProcessRequest
The EVT_ACX_OBJECT_PROCESS_REQUEST callback.
Remarks
Example
Example usage is shown below.
ACX_STREAMAUDIOENGINE_CALLBACKS streamAudioEngineCallbacks;
// Create the AudioEngine element to control offloaded streaming.
ACX_STREAMAUDIOENGINE_CALLBACKS_INIT(&streamAudioEngineCallbacks);
streamAudioEngineCallbacks.EvtAcxStreamAudioEngineAssignEffectsState = CodecR_EvtAcxStreamAudioEngineAssignEffectsState;
streamAudioEngineCallbacks.EvtAcxStreamAudioEngineRetrieveEffectsState = CodecR_EvtAcxStreamAudioEngineRetrieveEffectsState;
streamAudioEngineCallbacks.EvtAcxStreamAudioEngineRetrievePresentationPosition = CodecR_EvtAcxStreamAudioEngineRetrievePresentationPosition;
streamAudioEngineCallbacks.EvtAcxStreamAudioEngineAssignCurrentWritePosition = CodecR_EvtAcxStreamAudioEngineAssignCurrentWritePosition;
streamAudioEngineCallbacks.EvtAcxStreamAudioEngineRetrieveLinearBufferPosition = CodecR_EvtAcxStreamAudioEngineRetrieveLinearBufferPosition;
streamAudioEngineCallbacks.EvtAcxStreamAudioEngineAssignLastBufferPosition = CodecR_EvtAcxStreamAudioEngineAssignLastBufferPosition;
streamAudioEngineCallbacks.EvtAcxStreamAudioEngineAssignLoopbackProtection = CodecR_EvtAcxStreamAudioEngineAssignLoopbackProtection;
ACX requirements
Minimum ACX version: 1.0
For more information about ACX versions, see ACX version overview.
Requirements
Requirement | Value |
---|---|
Header | acxelements.h |