@@ -8,6 +8,7 @@ const char* MLColorGamutToStr(MLColorGamutType t)
88 case ML_CG_AdobeRGB: return " Adobe RGB" ;
99 case ML_CG_Rec2020: return " Rec.2020" ;
1010 case ML_CG_DCIP3: return " DCIP3" ;
11+ case ML_CG_scRGB: return " scRGB" ;
1112 default :
1213 assert (0 );
1314 return " " ;
@@ -18,6 +19,7 @@ const char* MLColorGamutToStr(MLColorGamutType t)
1819MLColorGamutConv::MLColorGamutConv (void ) {
1920 // from to
2021 mConvMat [ML_CG_Rec709][ML_CG_Rec709] = DirectX::XMMatrixIdentity ();
22+ mConvMat [ML_CG_Rec709][ML_CG_scRGB] = DirectX::XMMatrixIdentity ();
2123 mConvMat [ML_CG_Rec709][ML_CG_AdobeRGB] = DirectX::XMMATRIX (
2224 0 .7151f , 0 .2849f , 0 .0000f , 0 .0f ,
2325 0 .0000f , 1 .0000f , 0 .0000f , 0 .0f ,
@@ -39,6 +41,11 @@ MLColorGamutConv::MLColorGamutConv(void) {
3941 - 0 .0000f , 1 .0000f , - 0 .0000f , 0 .0f ,
4042 - 0 .0000f , - 0 .0429f , 1 .0429f , 0 .0f ,
4143 0 .0f , 0 .0f , 0 .0f , 1 .0f );
44+ mConvMat [ML_CG_AdobeRGB][ML_CG_scRGB] = DirectX::XMMATRIX (
45+ 1 .3984f , -0 .3983f , 0 .0000f , 0 .0f ,
46+ -0 .0000f , 1 .0000f , -0 .0000f , 0 .0f ,
47+ -0 .0000f , -0 .0429f , 1 .0429f , 0 .0f ,
48+ 0 .0f , 0 .0f , 0 .0f , 1 .0f );
4249 mConvMat [ML_CG_AdobeRGB][ML_CG_AdobeRGB] = DirectX::XMMatrixIdentity ();
4350 mConvMat [ML_CG_AdobeRGB][ML_CG_Rec2020] = DirectX::XMMATRIX (
4451 0 .8773f , 0 .0775f , 0 .0452f , 0 .0f ,
@@ -56,6 +63,11 @@ MLColorGamutConv::MLColorGamutConv(void) {
5663 - 0 .1246f , 1 .1329f , - 0 .0083f , 0 .0f ,
5764 - 0 .0182f , - 0 .1006f , 1 .1185f , 0 .0f ,
5865 0 .0f , 0 .0f , 0 .0f , 1 .0f );
66+ mConvMat [ML_CG_Rec2020][ML_CG_scRGB] = DirectX::XMMATRIX (
67+ 1 .6606f , -0 .5876f , -0 .0728f , 0 .0f ,
68+ -0 .1246f , 1 .1329f , -0 .0083f , 0 .0f ,
69+ -0 .0182f , -0 .1006f , 1 .1185f , 0 .0f ,
70+ 0 .0f , 0 .0f , 0 .0f , 1 .0f );
5971 mConvMat [ML_CG_Rec2020][ML_CG_AdobeRGB] = DirectX::XMMATRIX (
6072 1 .1521f , - 0 .0975f , - 0 .0545f , 0 .0f ,
6173 - 0 .1246f , 1 .1329f , - 0 .0083f , 0 .0f ,
@@ -73,6 +85,11 @@ MLColorGamutConv::MLColorGamutConv(void) {
7385 - 0 .0421f , 1 .0420f , 0 .0000f , 0 .0f ,
7486 - 0 .0196f , - 0 .0786f , 1 .0980f , 0 .0f ,
7587 0 .0f , 0 .0f , 0 .0f , 1 .0f );
88+ mConvMat [ML_CG_DCIP3][ML_CG_scRGB] = DirectX::XMMATRIX (
89+ 1 .2251f , -0 .2249f , -0 .0000f , 0 .0f ,
90+ -0 .0421f , 1 .0420f , 0 .0000f , 0 .0f ,
91+ -0 .0196f , -0 .0786f , 1 .0980f , 0 .0f ,
92+ 0 .0f , 0 .0f , 0 .0f , 1 .0f );
7693 mConvMat [ML_CG_DCIP3][ML_CG_AdobeRGB] = DirectX::XMMATRIX (
7794 0 .8641f , 0 .1360f , 0 .0000f , 0 .0f ,
7895 - 0 .0421f , 1 .0420f , 0 .0000f , 0 .0f ,
0 commit comments