EVT_ACX_STREAMAUDIOENGINE_RETRIEVE_PRESENTATION_POSITION回呼函式 (acxelements.h)
驅動程式會實 作EVT_ACX_STREAMAUDIOENGINE_RETRIEVE_PRESENTATION_POSITION 回呼函式,並呼叫 以擷取轉譯至串流音訊引擎節點之音訊數據中的目前位置。
語法
EVT_ACX_STREAMAUDIOENGINE_RETRIEVE_PRESENTATION_POSITION EvtAcxStreamaudioengineRetrievePresentationPosition;
NTSTATUS EvtAcxStreamaudioengineRetrievePresentationPosition(
ACXSTREAMAUDIOENGINE StreamAudioEngine,
PULONGLONG PositionInBlocks,
PULONGLONG QPCPosition
)
{...}
參數
StreamAudioEngine
現有、初始化的 ACXSTREAMAUDIOENGINE 物件。 如需 ACX 對象的詳細資訊,請參閱 ACX 物件的摘要。
PositionInBlocks
指定從數據流開頭到數據流中目前譯碼后未壓縮位置的區塊位移。 如需此值的詳細資訊,請參閱 KSAUDIO_PRESENTATION_POSITION結構 。
QPCPosition
指定音訊驅動程式讀取呈現位置以回應回呼時的性能計數器值。 如需此值的詳細資訊,請參閱 KSAUDIO_PRESENTATION_POSITION結構 。
傳回值
如果呼叫成功,則傳 STATUS_SUCCESS
回 。 否則,它會傳回適當的錯誤碼。 如需詳細資訊,請參閱 使用NTSTATUS值。
備註
範例
範例使用方式如下所示。
EVT_ACX_STREAMAUDIOENGINE_RETRIEVE_PRESENTATION_POSITION CodecR_EvtAcxStreamAudioEngineRetrievePresentationPosition;
NTSTATUS
CodecR_EvtAcxStreamAudioEngineRetrievePresentationPosition(
_In_ ACXSTREAMAUDIOENGINE StreamAudioEngine,
_Out_ PULONGLONG PositionInBlocks,
_Out_ PULONGLONG QPCPosition
)
{
NTSTATUS status = STATUS_INVALID_PARAMETER;
ACXSTREAM stream;
PCODEC_STREAM_CONTEXT ctx;
CRenderStreamEngine * streamEngine = NULL;
PAGED_CODE();
stream = AcxStreamAudioEngineGetStream(StreamAudioEngine);
if (stream)
{
ctx = GetCodecStreamContext(stream);
streamEngine = static_cast<CRenderStreamEngine*>(ctx->StreamEngine);
status = streamEngine->GetPresentationPosition(PositionInBlocks, QPCPosition);
}
return status;
}
ACX 需求
最小 ACX 版本: 1.0
如需 ACX 版本的詳細資訊,請參閱 ACX 版本概觀。
規格需求
需求 | 值 |
---|---|
標頭 | acxelements.h |
IRQL | PASSIVE_LEVEL |