énumération D3D12_VIDEO_ENCODER_SUPPORT_FLAGS (d3d12video.h)

Spécifie des indicateurs pour les fonctionnalités d’encodeur vidéo.

Syntaxe

typedef enum D3D12_VIDEO_ENCODER_SUPPORT_FLAGS {
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_NONE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_GENERAL_SUPPORT_OK,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_RECONFIGURATION_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RESOLUTION_RECONFIGURATION_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_VBV_SIZE_CONFIG_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_FRAME_ANALYSIS_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RECONSTRUCTED_FRAMES_REQUIRE_TEXTURE_ARRAYS,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_DELTA_QP_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SUBREGION_LAYOUT_RECONFIGURATION_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_ADJUSTABLE_QP_RANGE_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_INITIAL_QP_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_MAX_FRAME_SIZE_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SEQUENCE_GOP_RECONFIGURATION_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_MOTION_ESTIMATION_PRECISION_MODE_LIMIT_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_EXTENSION1_SUPPORT = 0x2000,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_QUALITY_VS_SPEED_AVAILABLE = 0x4000,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_READABLE_RECONSTRUCTED_PICTURE_LAYOUT_AVAILABLE = 0x8000,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_PER_BLOCK_QP_MAP_METADATA_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_PER_BLOCK_SATD_MAP_METADATA_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_PER_BLOCK_RC_BIT_ALLOCATION_MAP_METADATA_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SUBREGION_NOTIFICATION_ARRAY_OF_BUFFERS_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SUBREGION_NOTIFICATION_SINGLE_BUFFER_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_FRAME_PSNR_METADATA_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SUBREGIONS_PSNR_METADATA_AVAILABLE,
  D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_SPATIAL_ADAPTIVE_QP_AVAILABLE
} ;

Constantes

 
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_NONE
Aucun.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_GENERAL_SUPPORT_OK
Indique si la configuration donnée est prise en charge par l’encodeur en combinaison avec le reste des indicateurs pour transmettre certaines limitations ou aucune prise en charge générale. La couche de débogage Direct3D 12 peut fournir des informations supplémentaires.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_RECONFIGURATION_AVAILABLE
Prise en charge de la modification du contrôle de débit au milieu de la session d’encodage.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RESOLUTION_RECONFIGURATION_AVAILABLE
Prise en charge de la modification de la résolution au milieu de la session d’encodage.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_VBV_SIZE_CONFIG_AVAILABLE
Prise en charge de la configuration de l’intégralité et de la capacité initiale de VBV pour les algorithmes de contrôle de débit.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_FRAME_ANALYSIS_AVAILABLE
Prise en charge des modes de contrôle de débit qui impliquent l’analyse d’images pour optimiser l’utilisation du débit binaire au coût d’une performance plus lente. Lorsque cet indicateur est signalé par le pilote, une prise en charge supplémentaire de l’exécution de deux passes à des résolutions inférieures peut être interrogée dans D3D12_FEATURE_VIDEO_ENCODER_RATE_CONTROL_FRAME_ANALYSIS.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RECONSTRUCTED_FRAMES_REQUIRE_TEXTURE_ARRAYS
Lorsque cet indicateur est défini, les textures faisant référence à des images reconstruites ne peuvent être référencées qu’en tant que tableau de textures, par opposition à un tableau de ressources 2D de texture distinctes avec chaque ressource ayant une taille de tableau de 1. Lorsque cette fonctionnalité n’est pas nécessaire, il existe plus de flexibilité pour l’hôte. Cela est important pour les scénarios où la résolution change fréquemment et que le DPB doit être vidé pour un frame IDR, car un tableau de textures ne peut être alloué et libéré qu’en tant qu’unité unique, mais des ressources de texture distinctes peuvent être allouées et libérées individuellement.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_DELTA_QP_AVAILABLE
Prise en charge de l’utilisation du QP Delta dans le contrôle de débit
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SUBREGION_LAYOUT_RECONFIGURATION_AVAILABLE
Prise en charge des modifications de disposition dynamiques de sous-région lors d’une session d’encodage.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_ADJUSTABLE_QP_RANGE_AVAILABLE
Prise en charge de la plage de QP réglable dans le contrôle de débit.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_INITIAL_QP_AVAILABLE
Prise en charge du QP initial réglable dans le contrôle de débit.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_MAX_FRAME_SIZE_AVAILABLE
Prise en charge de la définition d’une limite maximale dans l’algorithme de débit binaire par chaque trame encodée.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SEQUENCE_GOP_RECONFIGURATION_AVAILABLE
Prise en charge des modifications goP dynamiques pendant une session d’encodage.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_MOTION_ESTIMATION_PRECISION_MODE_LIMIT_AVAILABLE
Prise en charge de l’appelant pour limiter la précision utilisée pour la recherche de mouvement sur l’encodeur d’images.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_EXTENSION1_SUPPORT
Prise en charge des configurations de l’extension de contrôle de débit 1.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_QUALITY_VS_SPEED_AVAILABLE
Prise en charge de la qualité et de la configuration de compromis de vitesse dans le contrôle de débit.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_READABLE_RECONSTRUCTED_PICTURE_LAYOUT_AVAILABLE
Prise en charge des dispositions d’image reconstruites lisibles.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_PER_BLOCK_QP_MAP_METADATA_AVAILABLE
Prise en charge de la sortie des métadonnées de mappage QP par bloc. Quand elle est prise en charge, l’application peut activer D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_QP_MAP.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_PER_BLOCK_SATD_MAP_METADATA_AVAILABLE
Prise en charge de la sortie des métadonnées de mappage SATD par bloc. Quand elle est prise en charge, l’application peut activer D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SATD_MAP.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_PER_BLOCK_RC_BIT_ALLOCATION_MAP_METADATA_AVAILABLE
Prise en charge de la sortie des métadonnées de mappage d’allocation de bits par contrôle de débit par bloc. Quand elle est prise en charge, l’application peut activer D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_RC_BIT_ALLOCATION_MAP.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SUBREGION_NOTIFICATION_ARRAY_OF_BUFFERS_AVAILABLE
Prise en charge de la notification de flux binaire compressé de sous-région à l’aide d’un tableau de mémoires tampons de sortie distinctes, une par sous-région.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SUBREGION_NOTIFICATION_SINGLE_BUFFER_AVAILABLE
Prise en charge de la notification de flux binaire compressé de la sous-région à l’aide d’une seule mémoire tampon de sortie contiguë pour tous les sous-régions.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_FRAME_PSNR_METADATA_AVAILABLE
Prise en charge de la sortie des métadonnées PSNR au niveau de l’image. Quand elle est prise en charge, l’application peut activer D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_FRAME_PSNR.
D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SUBREGIONS_PSNR_METADATA_AVAILABLE
Prise en charge de la sortie des métadonnées PSNR au niveau de la sous-région. En cas de prise en charge, l’application peut activer D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SUBREGIONS_PSNR.

Remarques

D3D12_VIDEO_ENCODER_SUPPORT_FLAG_GENERAL_SUPPORT_OK indique qu’il existe une prise en charge générale. Le reste des indicateurs peut être combiné pour transmettre des informations supplémentaires.

Prise en charge générale toujours attendue.

Exigences

Prérequis Valeur
Client minimum requis Windows Build 22000
Serveur minimal pris en charge Windows Build 22000
En-tête d3d12video.h