D3D12DDIARG_CREATE_VIDEO_DECODER_HEAP_0033-Struktur (d3d12umddi.h)

Wird verwendet, um ein Decoderobjekt für eine Decodierungssitzung zu erstellen.

Syntax

typedef struct D3D12DDIARG_CREATE_VIDEO_DECODER_HEAP_0033 {
  UINT                                     NodeMask;
  D3D12DDI_VIDEO_DECODE_CONFIGURATION_0020 Configuration;
  UINT                                     DecodeWidth;
  UINT                                     DecodeHeight;
  DXGI_FORMAT                              Format;
  DXGI_RATIONAL                            FrameRate;
  UINT                                     BitRate;
  UINT                                     MaxDecodePictureBufferCount;
} D3D12DDIARG_CREATE_VIDEO_DECODER_HEAP_0033;

Member

NodeMask

Legen Sie für einzelne GPU-Vorgänge diesen Wert auf 0 fest. Wenn mehrere GPU-Knoten vorhanden sind, legen Sie ein Bit fest, um den Knoten (den physischen Adapter des Geräts) zu identifizieren, auf den die Befehlswarteschlange angewendet wird. Jedes Bit in der Maske entspricht einem einzelnen Knoten. Es kann nur 1 Bit festgelegt werden.

Configuration

Das Decodierungsprofil und die Bitstreamverschlüsselung. Siehe D3D12DDI_VIDEO_DECODE_CONFIGURATION.

DecodeWidth

Die Decodierungsbreite des zu decodierenden Bitstroms.

DecodeHeight

Die Decodierungshöhe des zu decodierenden Bitstroms.

Format

Das Ressourcendatenformat.

FrameRate

Die Bildfrequenz des Eingabevideostreams.

BitRate

Die Datenkomprimierungsrate pro Sekunde für den komprimierten Videostream.

MaxDecodePictureBufferCount

Die maximale Anzahl von Decodierungsbildpuffern, die dieser Stream haben kann.

Hinweise

Der Decoder heap enthält die Zuordnungen für eine Decodierungssitzung und kann zustandsbezogene Daten wie Bewegungsvektoren enthalten. Im Falle einer Auflösungsänderung oder einer MaxDecodePictureBufferCount-Änderung wird eine neue instance dieses Objekts erstellt. Es ist codecspezifisch, wenn sich diese Eigenschaften ändern können.

Die Decodierungsbreite und -höhe geben die native Streamauflösung vor jeder Skalierung an. Die maximale Anzahl von Decodierungsbildpuffern (DPB) gibt die größte DPB-Anzahl an, die verwendet werden kann, ohne den Videodecodierungsdatenstrom neu zu erstellen.

Die Parameter Bitrate und FrameRate können von Treibern verwendet werden, um Heuristiken wie zwischene Zuordnungsgrößen oder Leistungsoptimierungen zu informieren.

Beim Decodieren eines Frames kann ein Fehler auftreten, wenn die Werte Bitrate und FrameRate für den Videostream nicht ausreichen. Wenn die Decodierung aus diesem Grund fehlschlägt, muss die Abfrage D3D12DDI_QUERY_TYPE_VIDEO_DECODE_STATISTICS Status D3D12DDI_VIDEO_DECODE_STATUS_RATE_EXCEEDED zurückgeben.

Die Parameter Bitrate und FrameRate können auch auf 0 festgelegt werden. Wenn diese Werte verwendet werden, müssen Treiber schlechteste Annahmen treffen und dürfen nicht mit D3D12DDI_VIDEO_DECODE_STATUS_RATE_EXCEEDED fehlschlagen.

Anforderungen

Anforderung Wert
Header d3d12umddi.h