Partager via


structure D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_DESC_0082_0 (d3d12umddi.h)

La structure D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_DESC_0082_0 contient les paramètres au niveau de l’image pour l’entrée d’une opération d’encodage.

Syntaxe

typedef struct D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_DESC_0082_0 {
  UINT                                                     IntraRefreshFrameIndex;
  D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_FLAGS_0080        Flags;
  D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_0082_0 PictureControlCodecData;
  D3D12DDI_VIDEO_ENCODE_REFERENCE_FRAMES_0080              ReferenceFrames;
} D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_DESC_0082_0;

Membres

IntraRefreshFrameIndex

Lors de la demande d’une vague d’actualisation intra-actualisation pour IntraRefreshFramesDuration images en spécifiant l’indicateur D3D12DDI_VIDEO_ENCODER_SEQUENCE_CONTROL_FLAG_0080_REQUEST_INTRA_REFRESH, cette valeur indique, pour l’image actuelle, l’index du cadre dans l’onde intra-actualisation. La plage de valeurs est définie par l’hôte entre [0-IntraRefreshFramesDuration) pour indiquer l’état de la session intra-actualisation au pilote.

Flags

Valeur D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_FLAGS_0080 qui indique les indicateurs de descripteur de contrôle image pour l’opération de trame encodée actuelle.

PictureControlCodecData

Structure D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_0082_0 qui contient des données spécifiques au codec picture-control. Selon le mode de contrôle de débit sélectionné, les valeurs du paramètre de quantisation (QP) sont interprétées différemment.

ReferenceFrames

Structure D3D12DDI_VIDEO_ENCODE_REFERENCE_FRAMES_0080 qui contient les images reconstruites à partir des sorties des opérations d’encodage passées.

Remarques

Consultez d’encodage vidéo D3D12 pour obtenir des informations générales.

Les remarques suivantes fournissent des conseils pour la gestion des images.

L’hôte appelle EncodeFrame dans l’ordre d’encodage en fonction de la séquence périodique de type image configurée dans la structure de codec group of pictures (GOP) après avoir effectué la réorganisation du cadre B par POC si nécessaire.

Différents codecs peuvent utiliser leurs propres méthodes d’indexation de cette structure et conserver leurs métadonnées d’état. Reportez-vous aux paramètres d’image de codec également transmis dans l’opération d'EncodeFrame qui contient ces détails.

D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_0082_0_RECONSTRUCTED_FRAMES_REQUIRE_CONTIGUOUS_TEXTURE_ARRAYS spécifie l’exigence des tableaux de textures pour les hDrvTexture2Ds et les champs pSubresources de la structure D3D12DDI_VIDEO_ENCODE_REFERENCE_FRAMES_0080.

La sortie de l’opération d’encodage pour un cadre donné doit également retourner l’image reconstruite si elle est marquée comme référence dans les images suivantes. Le client transmet les images reconstruites à l’avenir commandes EncodeFrame.

Si vous codez des couches temporelles, une image peut uniquement être utilisée comme image de référence sur TemporalLayerIndex couches inférieures à son propre numéro de couche. Les index de couche temporelle sont spécifiés dans la structure de contrôle d’image et dans les descripteurs d’image de référence.

Les limitations matérielles du nombre d’images de référence sont exprimées en termes de nombre maximal d’éléments présents dans L0 (MaxL0ReferencesForP/MaxL0ReferencesForB) et L1 (MaxL1ReferencesForB) listes, et la limitation par MaxDPBCapacity le nombre maximal d’index uniques dans (L0 union L1) qui correspondent à la valeur de pReferenceFramesReconPictureDescriptors fournis dans D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_0082_0.

Il n’existe aucune limitation au nombre d’entrées de mémoire tampon d’image décodée (DPB) transmises dans pReferenceFramesReconPictureDescriptors, mais au lieu de cela, le nombre d’entrées sur ce tableau faisant référence aux listes L0 et L1. Cela permet à l’utilisateur de suivre l’état d’un DPB dans pReferenceFramesReconPictureDescriptors dans les restrictions définies par les limitations standard du codec et d’utiliser uniquement un sous-ensemble restreint par les limitations matérielles lors de l’appel EncodeFrame. Par exemple, pour l’encodage HEVC, l’appelant peut suivre les 15 dernières images encodées dans pReferenceFramesReconPictureDescriptors, mais utiliser uniquement un sous-ensemble des images qui se trouvent dans les restrictions matérielles, en affectant un nombre limité d’index uniques dans les listes L0 et L1.

Notez qu’une demande d’actualisation instantanée du décodeur (IDR) agit comme un obstacle entre les références d’images et la mémoire tampon DPB et son état peuvent être vidés en conséquence par l’hôte.

Exigences

Exigence Valeur
client minimum pris en charge Windows 11 (WDDM 3.0)
d’en-tête d3d12umddi.h

Voir aussi

D3D12DDI_VIDEO_ENCODER_ENCODEFRAME_INPUT_STREAM_ARGUMENTS_0082_0

D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_0082_0

D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_0080

D3D12DDI_VIDEO_ENCODE_REFERENCE_FRAMES_0080

D3D12DDI_VIDEO_ENCODER_SEQUENCE_CONTROL_FLAGS_0082_0

D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAGS_0083_0

PFND3D12DDI_VIDEO_ENCODE_FRAME_0082_0