D3D12DDIARG_CREATE_VIDEO_DECODER_HEAP_0072 structure (d3d12umddi.h)

Structure utilisée pour créer un tas de décodeur vidéo pour une session de décodage.

Syntaxe

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

Membres

NodeMask

Représente l’ensemble de nœuds. Pour une opération GPU unique, définissez cette valeur sur zéro. S’il existe plusieurs nœuds GPU, définissez un bit pour identifier le nœud (l’adaptateur physique de l’appareil) auquel la file d’attente de commandes s’applique. Chaque bit du masque correspond à un seul nœud. Seul 1 bit peut être défini.

Configuration

Chiffrement du profil de décodage et du flux de bits. Voir D3D12DDI_VIDEO_DECODE_CONFIGURATION.

DecodeWidth

Largeur du flux de bits à décoder.

DecodeHeight

Hauteur du flux de bits à décoder.

Format

Format de données de ressource.

FrameRate

Fréquence d’images du flux vidéo d’entrée.

BitRate

Taux de compression des données bits par seconde pour le flux vidéo compressé.

MaxDecodePictureBufferCount

Nombre maximal de mémoires tampons d’images de décodage que ce flux peut avoir.

hDrvProtectedResourceSession

Gérez la session de ressource protégée acquise au moment de la création de l’objet.

Remarques

Le tas du décodeur contient les allocations d’une session de décodage et peut contenir un état, y compris des données de référence telles que des vecteurs de mouvement. En cas de modification de résolution ou de modification de MaxDecodePictureBufferCount, une nouvelle instance de cet objet est créée. Il est spécifique au codec lorsque ces propriétés peuvent changer.

La largeur et la hauteur du décodage spécifient la résolution de flux natif avant toute mise à l’échelle. Le nombre maximal de mémoires tampons d’images décodées (DPB) spécifie le plus grand nombre de DPB pouvant être utilisé sans recréer le flux de décodage vidéo.

Les paramètres Vitesse de transmission et FrameRate peuvent être utilisés par les pilotes pour informer les heuristiques telles que les tailles d’allocation intermédiaires ou les optimisations des performances.

Le décodage d’une image peut échouer si les valeurs de débit binaire et framerate sont insuffisantes pour le flux vidéo. Si le décodage échoue pour cette raison, le D3D12DDI_QUERY_TYPE_VIDEO_DECODE_STATISTICS de requête doit retourner status D3D12DDI_VIDEO_DECODE_STATUS_RATE_EXCEEDED.

Les paramètres Débit binaire et FrameRate peuvent également être définis sur zéro. Lorsque ces valeurs sont utilisées, les pilotes doivent faire des hypothèses les plus défavorables et ne sont pas autorisés à échouer avec D3D12DDI_VIDEO_DECODE_STATUS_RATE_EXCEEDED.

Pour plus d’informations, consultez la spécification de prise en charge des ressources protégées vidéo D3D .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10, version 2004
En-tête d3d12umddi.h

Voir aussi

D3D12DDI_VIDEO_DECODE_CONFIGURATION