Condividi tramite


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:

Screenshot di un calcolo matrice che mostra una conversione RGB. 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]. Screenshot di un calcolo matrice, che mostra una conversione tra un valore di colore RGB e un valore tristimulo XYZ CIE. 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 . Screenshot di un calcolo matrice che mostra una conversione di uno spazio colore RGB in un altro. 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

Vedi anche

Informazioni sul colore estese

Enumerazione Media Foundation