Description: This sample demonstrates Gamut and Gamma interfaces which user can configure color space features across supported configurations. Also, provides more user-friendly command line parameters.
Supported OS: Windows
Init and Destroy: Initialize the library before using it and destroy it after the usage. Refer to InitADL() for initialization and clean-up is done inside main function only.
Functionality:
- Presents with the help of possible command line options
- Allows graphic driver get color space and gamut capability.
- Allows graphic driver get / set gamut value.
- Allows graphic driver clean gamut settings.
- Allows graphic driver get / set re-gamma value.
- Allows graphic driver get / set de-gamma value.
- Allows graphic driver revert re-gamma / de-gamma settings.
Notice:
- gamut.iGamutRef is the possible options set/get gamut source or destination , overlay or graphics.
- 1) gamut.iGamutRef = 0; // Set/get the destination gamut (0 == (ADL_GAMUT_REFERENCE_SOURCE & gamut.iGamutRef))
- It’s on graphics original value (0 == (ADL_GAMUT_GAMUT_VIDEO_CONTENT & gamut.iGamutRef))
- 2) gamut.iGamutRef = 1; // Set/get the source gamut (1 == (ADL_GAMUT_REFERENCE_SOURCE & gamut.iGamutRef))
- It’s on graphics original value (0 == (ADL_GAMUT_GAMUT_VIDEO_CONTENT & gamut.iGamutRef))
- 3) gamut.iGamutRef = 2; // Set/get the destination gamut (0 == (ADL_GAMUT_REFERENCE_SOURCE & gamut.iGamutRef))
- It’s on graphics overlay value (original gamut + video content gamut) (1 == (ADL_GAMUT_GAMUT_VIDEO_CONTENT & gamut.iGamutRef))
- 4) gamut.iGamutRef = 3; // Set/get the source gamut (1 == (ADL_GAMUT_REFERENCE_SOURCE & gamut.iGamutRef))
- It’s on graphics overlay value (original gamut + video content gamut) (1 == (ADL_GAMUT_GAMUT_VIDEO_CONTENT & gamut.iGamutRef))
- We will use the gamma and gamut matrix default value according to applies output EOTF that OS requests
- (e.g. sRGB in SDR case, or ST.2084 in HDR case) information and the gamma original curve once the monitor connected.
- Normally, we can’t set the gamut matrix directly, you can set the white point with xyY color space with x, y value.
- You can check this chip capability from function :
- ADL_Display_Gamut_Caps
- if (true == (gamutInfo.SupportedGamutSpace & ADL_GAMUT_SPACE_CUSTOM))
- if (true == (gamutInfo.SupportedWhitePoint & ADL_WHITE_POINT_CUSTOM))
Sample Path: Sample\RegammaAndGamut
Additional information:
Re-gamma default value |
sRGB |
BT709 |
Gamma2.2 |
Gamma2.4 |
P3 |
CoefficientA0 |
31308 |
180000 |
0 |
0 |
0 |
CoefficientA1 |
12920 |
4500 |
0 |
0 |
0 |
CoefficientA2 |
55 |
99 |
0 |
0 |
0 |
CoefficientA3 |
55 |
99 |
0 |
0 |
0 |
Gamma |
2400 |
2200 |
2200 |
2400 |
2600 |
Gamut matrix default value |
sRGB |
Colormatch RGB |
Adobe RGB |
ProPhoto RGB |
Red-x |
0.64 |
0.63 |
0.64 |
0.735 |
Red-y |
0.33 |
0.34 |
0.33 |
0.254 |
Red-Y |
0.213 |
0.275 |
0.297 |
0.288 |
Green-x |
0.3 |
0.295 |
0.21 |
0.16 |
Green-y |
0.6 |
0.605 |
0.71 |
0.84 |
Green-Y |
0.715 |
0.658 |
0.627 |
0.712 |
Blue-x |
0.15 |
0.15 |
0.15 |
0.037 |
Blue-y |
0.06 |
0.075 |
0.06 |
0.001 |
Blue-Y |
0.072 |
0.067 |
0.075 |
0.001 |