énumération DXVA2_VideoPrimaries (dxva2api.h)
Spécifie les couleurs primaires d’une source vidéo. Ces indicateurs sont utilisés dans la structure DXVA2_ExtendedFormat .
Syntaxe
typedef enum _DXVA2_VideoPrimaries {
DXVA2_VideoPrimariesMask = 0x1f,
DXVA2_VideoPrimaries_Unknown = 0,
DXVA2_VideoPrimaries_reserved = 1,
DXVA2_VideoPrimaries_BT709 = 2,
DXVA2_VideoPrimaries_BT470_2_SysM = 3,
DXVA2_VideoPrimaries_BT470_2_SysBG = 4,
DXVA2_VideoPrimaries_SMPTE170M = 5,
DXVA2_VideoPrimaries_SMPTE240M = 6,
DXVA2_VideoPrimaries_EBU3213 = 7,
DXVA2_VideoPrimaries_SMPTE_C = 8
} DXVA2_VideoPrimaries;
Constantes
DXVA2_VideoPrimariesMask Valeur : 0x1f Masque de bits pour valider les valeurs d’indicateur. Cette valeur n’est pas un indicateur valide. |
DXVA2_VideoPrimaries_Unknown Valeur : 0 Inconnu. Traitez comme DXVA2_VideoPrimaries_BT709. |
DXVA2_VideoPrimaries_reserved Valeur : 1 Réservé. Ne pas utiliser. |
DXVA2_VideoPrimaries_BT709 Valeur : 2 ITU-R BT.709. Également utilisé pour sRGB et scRGB. |
DXVA2_VideoPrimaries_BT470_2_SysM Valeur : 3 ITU-R BT.470-4 System M (NTSC). |
DXVA2_VideoPrimaries_BT470_2_SysBG Valeur : 4 ITU-R BT.470-4 System B,G (PAL). |
DXVA2_VideoPrimaries_SMPTE170M Valeur : 5 SMPTE 170M. |
DXVA2_VideoPrimaries_SMPTE240M Valeur : 6 SMPTE 240M. |
DXVA2_VideoPrimaries_EBU3213 Valeur : 7 EBU Tech. 3213. |
DXVA2_VideoPrimaries_SMPTE_C Valeur : 8 SMPTE C (SMPTE RP 145). |
Notes
Les couleurs primaires définissent comment convertir des couleurs RVB en espace de couleurs CIE XYZ et peuvent être utilisées pour traduire des couleurs entre différents espaces de couleurs RVB. Un espace de couleur RVB est défini par les coordonnées de chromaticité (x,y) des primaires RVB plus le point blanc, comme indiqué dans le tableau suivant.
Espace de couleurs | (Rx, Ry) | (Gx, Gy) | (Bx, By) | Point blanc (Wx, Wy) |
---|---|---|---|---|
BT.709 | (0.64, 0.33) | (0.30, 0.60) | (0.15, 0.06) | D65 (0,3127, 0,3290) |
BT.470-2 Système B,G; EBU 3213 | (0.64, 0.33) | (0.29, 0.60) | (0.15, 0.06) | D65 (0,3127, 0,3290) |
BT.470-4 Système M | (0.67, 0.33) | (0.21, 0.71) | (0.14, 0.08) | CIE III.C (0.310, 0.316) |
SMPTE 170M; SMPTE 240M; SMPTE C | (0.63, 0.34) | (0.31, 0.595) | (0.155, 0.07) | D65 (0,3127, 0,3291) |
Les coordonnées z peuvent être dérivées de x et y comme suit : z = 1 - x - y. Pour convertir des couleurs RVB en valeurs tristimulus CIE XYZ, calculez une matrice T comme suit :
Avec T, vous pouvez utiliser les formules suivantes pour effectuer une conversion entre une valeur de couleur RVB et une valeur tristimulus CIE XYZ. Ces formules supposent que les composants RVB sont linéaires (non corrigés gamma) et sont normalisés à la plage [0...1]. Pour convertir des couleurs directement d’un espace colorimétrique RVB en un autre, utilisez la formule suivante, où T1 est la matrice de l’espace colorimétrique RVB1 et T2 la matrice de l’espace de couleurs RVB2. Pour une dérivation de ces formules, reportez-vous à Charles Poynton, Digital Video and HDTV Algorithms and Interfaces (Morgan Kaufmann, 2003).Cette énumération équivaut à l’énumération DXVA_VideoPrimaries utilisée dans DXVA 1.0.
Si vous utilisez l’interface IMFMediaType pour décrire le format vidéo, les couleurs primaires sont spécifiées dans l’attribut MF_MT_VIDEO_PRIMARIES .
Spécifications
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
En-tête | dxva2api.h |