// acxelements.h
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;
View the official Windows Driver Kit DDI referenceNo description available.
The ACX_STREAMAUDIOENGINE_CALLBACKS structure identifies the driver callbacks for ACX stream audio engine operations.
SizeThe length, in bytes, of this structure.
EvtAcxStreamAudioEngineAssignEffectsStateThe EVT_ACX_STREAMAUDIOENGINE_ASSIGN_EFFECTS_STATE callback.
EvtAcxStreamAudioEngineRetrieveEffectsStateThe EVT_ACX_STREAMAUDIOENGINE_RETRIEVE_EFFECTS_STATE callback.
EvtAcxStreamAudioEngineRetrievePresentationPositionThe EVT_ACX_STREAMAUDIOENGINE_RETRIEVE_PRESENTATION_POSITION callback.
EvtAcxStreamAudioEngineAssignCurrentWritePositionThe EVT_ACX_STREAMAUDIOENGINE_ASSIGN_CURRENT_WRITE_POSITION callback.
EvtAcxStreamAudioEngineRetrieveLinearBufferPositionThe EVT_ACX_STREAMAUDIOENGINE_RETRIEVE_LINEAR_BUFFER_POSITION callback.
EvtAcxStreamAudioEngineAssignLastBufferPositionThe EVT_ACX_STREAMAUDIOENGINE_ASSIGN_LAST_BUFFER_POSITION callback.
EvtAcxStreamAudioEngineAssignLoopbackProtectionThe EVT_ACX_STREAMAUDIOENGINE_ASSIGN_LOOPBACK_PROTECTION callback.
EvtAcxStreamAudioEngineProcessRequestThe EVT_ACX_OBJECT_PROCESS_REQUEST callback.
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;
Minimum ACX version: 1.0
For more information about ACX versions, see ACX version overview.