enumerazione DXVA2_VideoPrimaries (dxva2api.h)
Specifica le primarie di colore di un'origine video. Questi flag vengono usati nella struttura DXVA2_ExtendedFormat .
Sintassi
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;
Costanti
DXVA2_VideoPrimariesMask Valore: 0x1f Maschera bit per convalidare i valori del flag. Questo valore non è un flag valido. |
DXVA2_VideoPrimaries_Unknown Valore: 0 Sconosciuto. Considera come DXVA2_VideoPrimaries_BT709. |
DXVA2_VideoPrimaries_reserved Valore: 1 Riservato. Non usare. |
DXVA2_VideoPrimaries_BT709 Valore: 2 ITU-R BT.709. Usato anche per sRGB e scRGB. |
DXVA2_VideoPrimaries_BT470_2_SysM Valore: 3 ITU-R BT.470-4 System M (NTSC). |
DXVA2_VideoPrimaries_BT470_2_SysBG Valore: 4 ITU-R BT.470-4 System B,G (PAL). |
DXVA2_VideoPrimaries_SMPTE170M Valore: 5 SMPTE 170M. |
DXVA2_VideoPrimaries_SMPTE240M Valore: 6 SMPTE 240M. |
DXVA2_VideoPrimaries_EBU3213 Valore: 7 EBU Tech. 3213. |
DXVA2_VideoPrimaries_SMPTE_C Valore: 8 SMPTE C (SMPTE RP 145). |
Commenti
Le primarie color definiscono come convertire i colori RGB nello spazio dei colori CIE XYZ e possono essere usati per tradurre i colori tra spazi di colore RGB diversi. Uno spazio di colore RGB è definito dalle coordinate di cromaticità (x,y) delle primarie RGB più il punto bianco, come indicato nella tabella seguente.
Spazio dei colori | (Rx, Ry) | (Gx, Gy) | (Bx, By) | Punto bianco (Wx, Wy) |
---|---|---|---|---|
BT.709 | (0.64, 0.33) | (0.30, 0.60) | (0.15, 0.06) | D65 (0,3127, 0,3290) |
BT.470-2 System B,G; EBU 3213 | (0.64, 0.33) | (0.29, 0.60) | (0.15, 0.06) | D65 (0,3127, 0,3290) |
BT.470-4 System 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) |
Le coordinate z possono essere derivate da x e y come indicato di seguito: z = 1 - x - y. Per convertire i colori RGB in valori tristimuli CIE XYZ, calcolare una matrice T come indicato di seguito:
Dato T, è possibile usare le formule seguenti per convertire tra un valore di colore RGB e un valore tristimulo XYZ CIE. Queste formule presuppongono che i componenti RGB siano lineari (non gamma corretti) e siano normalizzati nell'intervallo [0...1]. Per convertire i colori direttamente da uno spazio colore RGB a un altro, usare la formula seguente, dove T1 è la matrice per lo spazio dei colori RGB1 e T2 è la matrice per lo spazio dei colori RGB2 . Per una derivazione di queste formule, fare riferimento a Charles Poynton, Algoritmi e INTERFACCE DIGITALI e INTERFACCE (Morgan Kaufmann, 2003).Questa enumerazione equivale all'enumerazione DXVA_VideoPrimaries usata in DXVA 1.0.
Se si usa l'interfaccia IMFMediaType per descrivere il formato video, le primarie di colore vengono specificate nell'attributo MF_MT_VIDEO_PRIMARIES .
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Intestazione | dxva2api.h |