PFND3DWDDM2_4DDI_VIDEODECODERBEGINFRAME Rückruffunktion (d3d10umddi.h)
Startet einen DirectX Video Acceleration (DXVA)-Decodierungsvorgang, um einen Videoframe zu decodieren.
Syntax
PFND3DWDDM2_4DDI_VIDEODECODERBEGINFRAME Pfnd3dwddm24DdiVideodecoderbeginframe;
HRESULT Pfnd3dwddm24DdiVideodecoderbeginframe(
D3D10DDI_HDEVICE hDevice,
D3D11_1DDI_HDECODE hDecode,
const D3DWDDM2_4DDIARG_VIDEODECODERBEGINFRAME *pBeginFrame
)
{...}
Parameter
hDevice
Ein Handle für das Anzeigegerät (Grafikkontext).
hDecode
Ein Handle für das Videodecoderobjekt, das über einen Aufruf der CreateVideoDecoder-Funktion erstellt wurde.
pBeginFrame
Ein Zeiger auf eine D3DWDDM2_4DDIARG_VIDEODECODERBEGINFRAME_RS4_0 Struktur. Weitere Informationen finden Sie im Abschnitt "Hinweise".
Rückgabewert
Gibt einen der folgenden HRESULT-Werte zurück:
Rückgabecode | Beschreibung |
---|---|
S_OK | Der Sitzungsschlüssel für die kryptografische Sitzung wurde erfolgreich ausgehandelt. |
E_OUTOFMEMORY | Der Arbeitsspeicher war nicht verfügbar, um den Vorgang abzuschließen. |
Bemerkungen
Wenn diese Funktion S_OK zurückgibt, ruft die Microsoft Direct3D-Laufzeit die VideoDecoderSubmitBuffers-Funktion auf, um die Decodierungsvorgänge auszuführen. Wenn alle Decodierungsvorgänge ausgeführt wurden, ruft die Laufzeit die VideoDecoderEndFrame-Funktion auf, um den Decodierungsvorgang in einem Videoframe zu beenden.
Anmerkung
Jeder Aufruf von VideoDecoderBeginFrame muss über einen übereinstimmenden Aufruf an VideoDecoderEndFrame verfügen, und VideoDecoderBeginFrame-Aufrufe können nicht geschachtelt werden.
Die D3DWDDM2_4DDIARG_VIDEODECODERBEGINFRAME_RS4_0 Struktur enthält die folgenden Daten:
- Die Ressource, die die entschlüsselten und decodierten Daten empfängt.
- Ein Inhaltsschlüssel, der zum Verschlüsseln der Videoframedaten verwendet wurde.
Wenn der pContentKey Member dieser Struktur nicht auf NULL festgelegt ist, enthält der Puffer, auf den dieses Element verweist, einen Inhaltsschlüssel pro Frame. Dieser Schlüssel muss verwendet werden, um die Daten zu entschlüsseln, anstatt den Sitzungsschlüssel zu verwenden.
Anmerkung
Wenn der pContentKey Member nicht auf NULL festgelegt ist, wird der Puffer, auf den dieses Element verweist, mithilfe des Sitzungsschlüssels mit dem AES-ECB Algorithmus verschlüsselt.
Wenn das pContentKey-Element auf NULL festgelegt ist, sollten die Videoframedaten mithilfe des Sitzungsschlüssels entschlüsselt werden.
Anforderungen
Anforderung | Wert |
---|---|
Header- | d3d10umddi.h |