énumération DXVA2_VideoTransferFunction (dxva2api.h)
Spécifie la fonction de conversion de RVB linéaire en RVB non linéaire (R’G’B'). Ces indicateurs sont utilisés dans la structure DXVA2_ExtendedFormat.
Syntaxe
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;
Constantes
DXVA2_VideoTransFuncMask Valeur : 0x1f Masque de bits pour valider les valeurs d’indicateur. Cette valeur n’est pas un indicateur valide. |
DXVA2_VideoTransFunc_Unknown Valeur : 0 Inconnu. Traitez comme DXVA2_VideoTransFunc_709. |
DXVA2_VideoTransFunc_10 Valeur : 1 RVB linéaire (gamma = 1.0). |
DXVA2_VideoTransFunc_18 Valeur : 2 True 1.8 gamma, L'= L^1/1.8. |
DXVA2_VideoTransFunc_20 Valeur : 3 True 2.0 gamma, L'= L^1/2.0. |
DXVA2_VideoTransFunc_22 Valeur : 4 True 2.2 gamma, L'= L^1/2.2. Cette fonction de transfert est utilisée dans le système ITU-R BT.470-2 M (NTSC). |
DXVA2_VideoTransFunc_709 Valeur : 5 Fonction de transfert ITU-R BT.709. Courbe Gamma 2.2 avec un segment linéaire dans la plage inférieure. Cette fonction de transfert est utilisée dans BT.709, BT.601, SMPTE 296M, SMPTE 170M, BT.470 et SMPTE 274M. En outre, BT-1361 utilise cette fonction dans la plage [0...1]. |
DXVA2_VideoTransFunc_240M Valeur : 6 Fonction de transfert SMPTE 240M. Courbe Gamma 2.2 avec un segment linéaire dans la plage inférieure. |
DXVA2_VideoTransFunc_sRGB Valeur : 7 Fonction de transfert sRGB. Courbe Gamma 2.4 avec un segment linéaire dans la plage inférieure. |
DXVA2_VideoTransFunc_28 Valeur : 8 True 2.8 gamma. L'= L^1/2.8. Cette fonction de transfert est utilisée dans le système UIT-R BT.470-2 B, G (PAL). |
Notes
Le tableau suivant présente les formules des fonctions de transfert les plus courantes. Dans ces formules, L est la valeur linéaire et L’est la valeur non linéaire (gamma corrigée). Ces valeurs sont relatives à une plage normalisée [0...1].
Espace de couleurs | Fonction de transfert |
---|---|
sRGB (8 bits) |
L'= 12,92L, pour L < 0,031308 L'= 1.055L^1/2.4− 0.055, pour L >= 0.031308 |
BT.470-2 Système B, G | L'= L^0.36 |
Système M BT.470-2 | L'= L^0.45 |
BT.709 |
L'= 4,50 L, pour L < 0,018 L'= 1,099L^0,45− 0,099, pour L >= 0,018 |
scRGB | L'= L |
SMPTE 240M |
L'= 4,0L, pour L < 0,0228 L'= 1.1115L^0.45− 0.01115, pour L >= 0.0228 |
Le tableau suivant montre les formules inverses pour obtenir les valeurs d’origine corrigées par gamma :
Espace de couleurs | Fonction de transfert |
---|---|
sRGB (8 bits) |
L = 1/12.92L', pour L'0,03928 < L = ((L'+ 0,055)/1055)^2.4, pour L' >= 0,03928 |
BT.470-2 Système B, G | L = L'^1/0.36 |
Système M BT.470-2 | L = L'^1/0.45 |
BT.709 |
L = L'/4.50, pour L'0.081 < L = ((L'+ 0.099) / 1.099)^1/0.45, pour L' >= 0.081 |
scRGB | L = L' |
SMPTE 240M |
L = L'/4.0, pour L'0.0913 < L= ((L'+ 0.1115)/1.1115)^1/0.45, pour L' >= 0,0913 |
Cette énumération équivaut à l’énumération DXVA_VideoTransferFunction utilisée dans DXVA 1.0.
Si vous utilisez l’interface IMFMediaType pour décrire le format vidéo, la fonction de transfert est spécifiée dans l’attribut MF_MT_TRANSFER_FUNCTION .
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 |