Freigeben über


AcxRtStreamNotifyPacketComplete-Funktion (acxstreams.h)

Der Treiber ruft AcxRtStreamNotifyPacketComplete auf, wenn ein Paket abgeschlossen ist. Die Paketvervollständigungszeit und der 0-basierte Paketindex sind enthalten, um die Clientleistung zu verbessern. Das ACX-Framework legt alle Benachrichtigungsereignisse fest, die dem Stream zugeordnet sind.

Syntax

NTSTATUS AcxRtStreamNotifyPacketComplete(
  ACXSTREAM Stream,
  ULONGLONG CompletedPacket,
  ULONGLONG QPCCompletion
);

Parameter

Stream

Ein vorhandenes ACXSTREAM-Objekt. Ein ACXSTREAM-Objekt stellt einen audiostream dar, der von einer Verbindung erstellt wird. Der Stream besteht aus einer Liste von Elementen, die basierend auf den Elementen der übergeordneten Leitung erstellt wurden.

CompletedPacket

Ein 0-basiertes Paketindex, der das Paket angibt, das gerade abgeschlossen wurde.

QPCCompletion

Die Paketvervollständigungszeit, wie sie von KeQueryPerformanceCounter zurückgegeben wird. Dieser Wert sollte so nah wie möglich an der tatsächlichen Hardware-Vervollständigung liegen (z. B. kann der Treiber KeQueryPerformanceCounter in seiner Interrupt-Dienstroutine aufrufen).

Rückgabewert

Gibt zurück STATUS_SUCCESS , wenn der Aufruf erfolgreich war. Andernfalls wird ein entsprechender Fehlercode zurückgegeben. Weitere Informationen finden Sie unter Verwenden von NTSTATUS-Werten.

Hinweise

AcxRtStreamNotifyPacketComplete muss unter DISPATCH_LEVEL oder darunter aufgerufen werden.

Beispiel

Die Verwendungsbeispiele finden Sie unten.

completedPacket = (ULONG)InterlockedIncrement((LONG*)&m_CurrentPacket) - 1;

InterlockedExchange64(&m_LastPacketStart.QuadPart, m_CurrentPacketStart.QuadPart);
InterlockedExchange64(&m_CurrentPacketStart.QuadPart, QPC.QuadPart);

// Tell ACX we've completed the packet.
(void)AcxRtStreamNotifyPacketComplete(m_Stream, completedPacket, QPC.QuadPart);

ACX-Anforderungen

AcX-Mindestversion: 1.0

Weitere Informationen zu ACX-Versionen finden Sie unter ACX-Versionsübersicht.

Anforderungen

Anforderung Wert
Header acxstreams.h
IRQL <= DISPATCH_LEVEL

Weitere Informationen