Freigeben über


DXVA2_DecodeBufferDesc-Struktur (dxva2api.h)

Beschreibt einen Puffer, der von einem Decoder an ein DxVA-Gerät (DirectX Video Acceleration) gesendet wird.

Syntax

typedef struct _DXVA2_DecodeBufferDesc {
  DWORD CompressedBufferType;
  UINT  BufferIndex;
  UINT  DataOffset;
  UINT  DataSize;
  UINT  FirstMBaddress;
  UINT  NumMBsInBuffer;
  UINT  Width;
  UINT  Height;
  UINT  Stride;
  UINT  ReservedBits;
  PVOID pvPVPState;
} DXVA2_DecodeBufferDesc;

Member

CompressedBufferType

Gibt den Typ des Puffers an, der an den Accelerator übergeben wird. Dabei muss es sich um einen der folgenden Werte handeln.

Wert Bedeutung
DXVA2_PictureParametersBufferType
Bilddecodierungsparameterpuffer.
DXVA2_MacroBlockControlBufferType
Makroblocksteuerungsbefehlspuffer.
DXVA2_ResidualDifferenceBufferType
Restdifferenzblockdatenpuffer.
DXVA2_DeblockingControlBufferType
Deaktivieren des Filtersteuerungsbefehlpuffers.
DXVA2_InverseQuantizationMatrixBufferType
Inverser Quantisierungsmatrixpuffer.
DXVA2_SliceControlBufferType
Slice-Control-Puffer.
DXVA2_BitStreamDateBufferType
Bitstreamdatenpuffer.
DXVA2_MotionVectorBuffer
Bewegungsvektorpuffer.
DXVA2_FilmGrainBuffer
Datenpuffer für die Filmkörnungssynthese.

BufferIndex

Reserviert. Auf NULL festlegen.

DataOffset

Gibt den Offset der relevanten Daten vom Anfang des Puffers in Bytes an. Derzeit muss dieser Wert 0 sein.

DataSize

Gibt die Menge relevanter Daten im Puffer in Bytes an. Der Speicherort des letzten Byte des Inhalts im Puffer ist DataOffset + DataSize − 1.

FirstMBaddress

Gibt die Makroblockadresse des ersten Makroblocks im Puffer an. Die Makroblockadresse wird in der Rasterscanreihenfolge angegeben.

NumMBsInBuffer

Gibt die Anzahl der Makroblöcke von Daten im Puffer an. Diese Anzahl umfasst übersprungene Makroblocks. Dieser Wert muss 0 sein, wenn der Datenpuffertyp einer der folgenden ist: Bilddecodierungsparameter, Inverse-Quantisierungsmatrix, AYUV, IA44/AI44, DPXD, Highlight oder DCCMD.

Width

Reserviert. Auf NULL festlegen.

Height

Reserviert. Auf NULL festlegen.

Stride

Reserviert. Auf NULL festlegen.

ReservedBits

Reserviert. Auf NULL festlegen.

pvPVPState

Zeiger auf ein Bytearray, das einen Initialisierungsvektor (IV) für verschlüsselte Daten enthält. Wenn der Decodierungspuffer keine verschlüsselten Daten enthält, legen Sie diesen Member auf NULL fest. Wenn der Decodierungspuffer verschlüsselte Daten enthält, hängt der Inhalt von pvPVPState von der Art der Verschlüsselung ab. Für D3DCRYPTOTYPE_AES128_CTR verweist das pvPVPState-Element auf eine DXVA2_AES_CTR_IV-Struktur .

Hinweise

Diese Struktur entspricht in etwa der DXVA_BufferDescription-Struktur in DXVA 1, aber einige Felder werden in DXVA 2 nicht mehr verwendet.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Kopfzeile dxva2api.h

Weitere Informationen

DirectX VideoBeschleunigung 2.0

Medienfundamentstrukturen