EVT_ACX_STREAM_GET_HW_LATENCY Rückruffunktion (acxstreams.h)
Das EvtAcxStreamGetHwLatency--Ereignis weist den Treiber an, die Datenstromlatenz für den spezifischen Schaltkreis dieses Datenstroms bereitzustellen (die Gesamtlatenz ist eine Summe der Latenz der verschiedenen Schaltkreise).
Syntax
EVT_ACX_STREAM_GET_HW_LATENCY EvtAcxStreamGetHwLatency;
NTSTATUS EvtAcxStreamGetHwLatency(
ACXSTREAM Stream,
ULONG *FifoSize,
ULONG *Delay
)
{...}
Parameter
Stream
Ein ACXSTREAM -Objekt stellt einen Von einem Schaltkreis erstellten Audiodatenstrom dar. Der Datenstrom besteht aus einer Liste von Elementen, die basierend auf den Elementen des übergeordneten Schaltkreises erstellt wurden. Weitere Informationen finden Sie unter ACX – Zusammenfassung von ACX Objects.
FifoSize
Die FifoSize in Byte.
Delay
Die Verzögerung in 100-Nanosekundeneinheiten.
Rückgabewert
Gibt STATUS_SUCCESS
zurück, wenn der Anruf erfolgreich war. Andernfalls wird ein entsprechender Fehlercode zurückgegeben. Weitere Informationen finden Sie unter Verwenden von NTSTATUS-Werten.
Bemerkungen
Die Beispielverwendung wird unten gezeigt.
//
// Init streaming callbacks.
//
ACX_RT_STREAM_CALLBACKS rtCallbacks;
ACX_RT_STREAM_CALLBACKS_INIT(&rtCallbacks);
rtCallbacks.EvtAcxStreamGetHwLatency = EvtStreamGetHwLatency;
status = AcxStreamInitAssignAcxRtStreamCallbacks(StreamInit, &rtCallbacks));
PAGED_CODE_SEG
NTSTATUS
EvtStreamGetHwLatency(
_In_ ACXSTREAM Stream,
_Out_ ULONG * FifoSize,
_Out_ ULONG * Delay
)
{
PSTREAM_CONTEXT ctx;
PAGED_CODE();
ctx = GetStreamContext(Stream);
*FifoSize = ctx->DmaFifoSize;
*Delay = ctx->ChipsetDelay + ctx->CodecDelay;
return STATUS_SUCCESS;
}
ACX-Anforderungen
Mindestens ACX-Version: 1.0
Weitere Informationen zu ACX-Versionen finden Sie unter ACX-Versionsübersicht.
Anforderungen
Anforderung | Wert |
---|---|
Header- | acxstreams.h |
IRQL- | PASSIVE_LEVEL |