D3D12DDICAPS_VIDEO_ENCODER_SUPPORT_DATA_0083_0-Struktur (d3d12umddi.h)

Die D3D12DDICAPS_VIDEO_ENCODER_SUPPORT_DATA_0083_0-Struktur stellt die Supportdetails des Treibers für die angeforderten Eingabekonfigurationen bereit.

Syntax

typedef struct D3D12DDICAPS_VIDEO_ENCODER_SUPPORT_DATA_0083_0 {
  UINT                                                      NodeIndex;
  D3D12DDI_VIDEO_ENCODER_CODEC_0080                         Codec;
  DXGI_FORMAT                                               InputFormat;
  D3D12DDI_VIDEO_ENCODER_CODEC_CONFIGURATION_0082_0         CodecConfiguration;
  D3D12DDI_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE_0082_0      CodecGopSequence;
  D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_0080_2                RateControl;
  D3D12DDI_VIDEO_ENCODER_INTRA_REFRESH_MODE_0080            IntraRefresh;
  D3D12DDI_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE_0080   SubregionFrameEncoding;
  UINT                                                      ResolutionsListCount;
  const D3D12DDI_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC_0080 *pResolutionList;
  UINT                                                      MaxReferenceFramesInDPB;
  D3D12DDI_VIDEO_ENCODER_VALIDATION_FLAGS_0082_0            ValidationFlags;
  D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAGS_0083_0               SupportFlags;
  D3D12DDI_VIDEO_ENCODER_PROFILE_DESC_0080_2                SuggestedProfile;
  D3D12DDI_VIDEO_ENCODER_LEVEL_SETTING_0080_2               SuggestedLevel;
  D3D12DDI_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS_0080_2   *pResolutionDependentSupport;
} D3D12DDICAPS_VIDEO_ENCODER_SUPPORT_DATA_0083_0;

Member

NodeIndex

[in] Bei einem Vorgang mit mehreren Adaptern gibt NodeIndex an, auf welchen physischen Adapter des Geräts der Vorgang angewendet wird.

Codec

[in] Ein D3D12DDI_VIDEO_ENCODER_CODEC_0080 Wert, der den zu verwendenden Codierungscodec angibt.

InputFormat

[in] Ein DXGI_FORMAT Wert, der das Eingabeformat der Eingabeframes angibt.

CodecConfiguration

[in] Eine D3D12DDI_VIDEO_ENCODER_CODEC_CONFIGURATION_0082_0-Struktur , die die angeforderte Konfiguration für den ausgewählten Codec angibt. Die Codec-spezifische Struktur in dieser Struktur sollte mit dem codec-Typ übereinstimmen, der von Codec angegeben wird.

CodecGopSequence

[in] Eine D3D12DDI_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE_0082_0-Struktur , die die angeforderte GoP-Konfiguration (Group of Pictures) für den ausgewählten Codec angibt. Die Codec-spezifische Struktur in dieser Struktur sollte mit dem codec-Typ übereinstimmen, der von Codec angegeben wird.

RateControl

[in] Eine D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_0080_2-Struktur , die die angeforderte Konfiguration der Ratensteuerung angibt.

IntraRefresh

[in] Ein D3D12DDI_VIDEO_ENCODER_INTRA_REFRESH_MODE_0080-Wert , der den angeforderten Intra-Aktualisierungsmodus angibt.

SubregionFrameEncoding

[in] Ein D3D12DDI_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE_0080 Wert, der den angeforderten Partitionierungsmodus für Unterregionen angibt.

ResolutionsListCount

[in] Gibt die Anzahl der Auflösungen in der Liste an, auf die pResolutionList verweist.

pResolutionList

[in] Zeiger auf ein Array von D3D12DDI_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC_0080 Strukturen, das die Liste der angeforderten Auflösungen angibt, die unterstützt werden sollen.

MaxReferenceFramesInDPB

[in] Die maximale Anzahl vorheriger Verweisframes, die beim Aufrufen von EncodeFrame für Interframes verwendet werden sollen. Dieser Wert wird verwendet, um die vorgeschlagene Ebene zu berechnen.

ValidationFlags

[out] Ein D3D12DDI_VIDEO_ENCODER_VALIDATION_FLAGS_0082_0 Wert, der weitere Details bereitstellt, wenn die Cap-Abfrage mit nicht festgelegtemD3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_0083_0_GENERAL_SUPPORT_OK Bit zurückgibt.

SupportFlags

[out] Ein D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAGS_0083_0 Wert, der die Supportdetails für die angeforderte Konfiguration angibt.

SuggestedProfile

[out] Eine D3D12DDI_VIDEO_ENCODER_PROFILE_DESC_0080_2-Struktur , in der der Treiber das übereinstimmende Profil für die angeforderte Konfiguration zurückgibt.

SuggestedLevel

[out] Eine D3D12DDI_VIDEO_ENCODER_LEVEL_SETTING_0080_2-Struktur , in der der Treiber die Abgleichsebene für die angeforderte Konfiguration für jede in pResolutionList vorhandene Auflösung zurückgibt.

pResolutionDependentSupport

[out] Zeiger auf eine Liste von D3D12DDI_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS_0080_2 Strukturen, in denen der Treiber die auflösungsabhängigen Supportgrenzwerte zurückgibt.

Hinweise

Die D3D-Runtime ruft PFND3D12DDI_VIDEO_GETCAPS auf, wobei D3D12DDICAPS_TYPE_VIDEO_0080_ENCODER_SUPPORT als Funktionstyp angegeben ist.

Die von dieser Abfrage gewährte oder abgelehnte Unterstützung gibt an, dass alle Features gleichzeitig unterstützt werden, die in derselben Codierungssitzung verwendet werden sollen. Es kann Features geben, die einzeln unterstützt werden, wenn sie mit einzelnen Abfrageaufrufen abgefragt werden, aber nicht gleichzeitig unterstützt werden.

Beispielsweise kann es Unterstützung für die intra-Aktualisierung geben, wenn D3D12DDICAPS_TYPE_VIDEO_0080_ENCODER_INTRA_REFRESH_MODE überprüft wird, und es kann Unterstützung für B-Frames geben, wenn überprüft wird, dass D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT_H264. MaxL1ReferencesForB ist größer als 0. Es kann jedoch vorkommen, dass intra-Aktualisierungs- und B-Frames nicht gleichzeitig unterstützt werden. In diesem Fall muss beim Abfragen D3D12DDICAPS_TYPE_VIDEO_0080_ENCODER_SUPPORT mit CodecGopSequence , das B-Frames und den zeilenbasierten Modus für die interne Aktualisierung enthält, das flag D3D12_VIDEO_ENCODER_SUPPORT_FLAG_GENERAL_SUPPORT_OK deaktiviert werden.

Diese Struktur funktioniert nicht für AV1-Codeceingaben. Verwenden Sie stattdessen D3D12DDICAPS_VIDEO_ENCODER_SUPPORT1_DATA_0096 für die Unterstützung des AV1-Codecs.

Allgemeine Informationen finden Sie unter D3D12-Videocodierung .

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 11 (WDDM 3.0)
Kopfzeile d3d12umddi.h

Weitere Informationen

D3D12DDIARG_VIDEO_GETCAPS_0020

PFND3D12DDI_VIDEO_ENCODE_FRAME_0082_0