enumerazione DXVA2_VideoTransferFunction (dxva2api.h)
Specifica la funzione di conversione da RGB lineare a RGB non lineare (R'G'B'). Questi flag vengono usati nella struttura DXVA2_ExtendedFormat.
Sintassi
typedef enum _DXVA2_VideoTransferFunction {
DXVA2_VideoTransFuncMask = 0x1f,
DXVA2_VideoTransFunc_Unknown = 0,
DXVA2_VideoTransFunc_10 = 1,
DXVA2_VideoTransFunc_18 = 2,
DXVA2_VideoTransFunc_20 = 3,
DXVA2_VideoTransFunc_22 = 4,
DXVA2_VideoTransFunc_709 = 5,
DXVA2_VideoTransFunc_240M = 6,
DXVA2_VideoTransFunc_sRGB = 7,
DXVA2_VideoTransFunc_28 = 8
} DXVA2_VideoTransferFunction;
Costanti
DXVA2_VideoTransFuncMask Valore: 0x1f Maschera di bit per convalidare i valori dei flag. Questo valore non è un flag valido. |
DXVA2_VideoTransFunc_Unknown Valore: 0 Sconosciuto. Considera come DXVA2_VideoTransFunc_709. |
DXVA2_VideoTransFunc_10 Valore: 1 RGB lineare (gamma = 1,0). |
DXVA2_VideoTransFunc_18 Valore: 2 True 1.8 gamma, L' = L^1/1.8. |
DXVA2_VideoTransFunc_20 Valore: 3 True 2.0 gamma, L' = L^1/2.0. |
DXVA2_VideoTransFunc_22 Valore: 4 True 2.2 gamma, L' = L^1/2.2. Questa funzione di trasferimento viene usata in ITU-R BT.470-2 System M (NTSC). |
DXVA2_VideoTransFunc_709 Valore: 5 Funzione di trasferimento ITU-R BT.709. Curva gamma 2.2 con un segmento lineare nell'intervallo inferiore. Questa funzione di trasferimento viene usata in BT.709, BT.601, SMPTE 296M, SMPTE 170M, BT.470 e SMPTE 274M. Inoltre BT-1361 usa questa funzione all'interno dell'intervallo [0...1]. |
DXVA2_VideoTransFunc_240M Valore: 6 Funzione di trasferimento SMPTE 240M. Curva gamma 2.2 con un segmento lineare nell'intervallo inferiore. |
DXVA2_VideoTransFunc_sRGB Valore: 7 funzione di trasferimento sRGB. Curva gamma 2.4 con un segmento lineare nell'intervallo inferiore. |
DXVA2_VideoTransFunc_28 Valore: 8 True gamma 2.8. L' = L^1/2.8. Questa funzione di trasferimento viene usata in ITU-R BT.470-2 System B, G (PAL). |
Commenti
La tabella seguente illustra le formule per le funzioni di trasferimento più comuni. In queste formule, L è il valore lineare e L' è il valore non lineare (con correzione gamma). Questi valori sono relativi a un intervallo normalizzato [0...1].
Spazio colori | Funzione di trasferimento |
---|---|
sRGB (8 bit) |
L' = 12.92L, per L < 0.031308 L' = 1.055L^1/2.4− 0,055, per L >= 0,031308 |
BT.470-2 System B, G | L' = L^0.36 |
BT.470-2 System M | L' = L^0.45 |
BT.709 |
L' = 4.50L, per L < 0.018 L' = 1,099L^0,45− 0,099, per L >= 0,018 |
Scrgb | L' = L |
SMPTE 240M |
L' = 4.0L, per L < 0.0228 L' = 1,1115L^0,45− 0,01115, per L >= 0,0228 |
La tabella seguente illustra le formule inverse per ottenere i valori originali con correzione gamma:
Spazio colori | Funzione di trasferimento |
---|---|
sRGB (8 bit) |
L = 1/12.92L', per L' < 0.03928 L = ((L' + 0,055)/1055)^2.4, per L' >= 0,03928 |
BT.470-2 System B, G | L = L'^1/0.36 |
BT.470-2 System M | L = L'^1/0.45 |
BT.709 |
L = L'/4.50, per L' < 0.081 L = ((L' + 0.099) / 1.099)^1/0.45, per L' >= 0,081 |
Scrgb | L = L' |
SMPTE 240M |
L = L'/4.0, per L' < 0.0913 L= ((L' + 0.1115)/1.1115)^1/0.45, per L' >= 0,0913 |
Questa enumerazione equivale all'enumerazione DXVA_VideoTransferFunction utilizzata in DXVA 1.0.
Se si usa l'interfaccia IMFMediaType per descrivere il formato video, la funzione di trasferimento viene specificata nell'attributo MF_MT_TRANSFER_FUNCTION .
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Intestazione | dxva2api.h |