Krita Source Code Documentation
Loading...
Searching...
No Matches
KisHDRMetadataOptions.cpp
Go to the documentation of this file.
1
/*
2
* SPDX-FileCopyrightText: 2019 Dmitry Kazakov <dimula73@gmail.com>
3
*
4
* SPDX-License-Identifier: LGPL-2.1-or-later
5
*/
6
7
#include "
KisHDRMetadataOptions.h
"
8
9
#include "
kis_properties_configuration.h
"
10
11
12
KisHDRMetadataOptions::KisHDRMetadataOptions
()
13
: predefinedMasterDisplayId(
"p2100-pq"
)
14
{
15
}
16
17
KisPropertiesConfigurationSP
KisHDRMetadataOptions::toProperties
()
const
18
{
19
KisPropertiesConfigurationSP
config =
new
KisPropertiesConfiguration
();
20
21
config->setProperty(
"predefinedMasterDisplayId"
,
predefinedMasterDisplayId
);
22
23
config->setProperty(
"redX"
,
redX
);
24
config->setProperty(
"redY"
,
redY
);
25
26
config->setProperty(
"greenX"
,
greenX
);
27
config->setProperty(
"greenY"
,
greenY
);
28
29
config->setProperty(
"blueX"
,
blueX
);
30
config->setProperty(
"blueY"
,
blueY
);
31
32
config->setProperty(
"whiteX"
,
whiteX
);
33
config->setProperty(
"whiteY"
,
whiteY
);
34
35
config->setProperty(
"minLuminance"
,
minLuminance
);
36
config->setProperty(
"maxLuminance"
,
maxLuminance
);
37
38
config->setProperty(
"maxCLL"
,
maxCLL
);
39
config->setProperty(
"maxFALL"
,
maxFALL
);
40
41
return
config;
42
}
43
44
void
KisHDRMetadataOptions::fromProperties
(
KisPropertiesConfigurationSP
config)
45
{
46
predefinedMasterDisplayId
= config->getPropertyLazy(
"predefinedMasterDisplayId"
,
predefinedMasterDisplayId
);
47
48
redX
= config->getPropertyLazy(
"redX"
,
redX
);
49
redY
= config->getPropertyLazy(
"redY"
,
redY
);
50
51
greenX
= config->getPropertyLazy(
"greenX"
,
greenX
);
52
greenY
= config->getPropertyLazy(
"greenY"
,
greenY
);
53
54
blueX
= config->getPropertyLazy(
"blueX"
,
blueX
);
55
blueY
= config->getPropertyLazy(
"blueY"
,
blueY
);
56
57
whiteX
= config->getPropertyLazy(
"whiteX"
,
whiteX
);
58
whiteY
= config->getPropertyLazy(
"whiteY"
,
whiteY
);
59
60
minLuminance
= config->getPropertyLazy(
"minLuminance"
,
minLuminance
);
61
maxLuminance
= config->getPropertyLazy(
"maxLuminance"
,
maxLuminance
);
62
63
maxCLL
= config->getPropertyLazy(
"maxCLL"
,
maxCLL
);
64
maxFALL
= config->getPropertyLazy(
"maxFALL"
,
maxFALL
);
65
}
66
67
QString
KisHDRMetadataOptions::generateFFMpegOptions
()
const
68
{
69
auto
cprim = [] (qreal x) {
return
int(x / 0.00002); };
70
auto
lum = [] (qreal x) {
return
int(x / 0.0001); };
71
72
const
QString x265Params =
73
QString(
"-x265-params "
74
"master-display=R(%1,%2)G(%3,%4)B(%5,%6)WP(%7,%8)L(%9,%10):"
75
"max-cll=%11,%12:"
76
"colorprim=bt2020:"
77
"colormatrix=bt2020c:"
78
"transfer=smpte2084:"
79
"range=full"
)
80
.arg(cprim(
redX
)).arg(cprim(
redY
))
81
.arg(cprim(
greenX
)).arg(cprim(
greenY
))
82
.arg(cprim(
blueX
)).arg(cprim(
blueY
))
83
.arg(cprim(
whiteX
)).arg(cprim(
whiteY
))
84
.arg(lum(
maxLuminance
)).arg(lum(
minLuminance
))
85
.arg(
int
(
maxCLL
)).arg(
int
(
maxFALL
));
86
87
return
x265Params;
88
}
KisHDRMetadataOptions.h
KisPinnedSharedPtr< KisPropertiesConfiguration >
kis_properties_configuration.h
KisHDRMetadataOptions::predefinedMasterDisplayId
QString predefinedMasterDisplayId
Definition
KisHDRMetadataOptions.h:17
KisHDRMetadataOptions::blueY
qreal blueY
Definition
KisHDRMetadataOptions.h:26
KisHDRMetadataOptions::generateFFMpegOptions
QString generateFFMpegOptions() const
Definition
KisHDRMetadataOptions.cpp:67
KisHDRMetadataOptions::maxCLL
qreal maxCLL
Definition
KisHDRMetadataOptions.h:34
KisHDRMetadataOptions::redY
qreal redY
Definition
KisHDRMetadataOptions.h:20
KisHDRMetadataOptions::KisHDRMetadataOptions
KisHDRMetadataOptions()
Definition
KisHDRMetadataOptions.cpp:12
KisHDRMetadataOptions::maxLuminance
qreal maxLuminance
Definition
KisHDRMetadataOptions.h:32
KisHDRMetadataOptions::maxFALL
qreal maxFALL
Definition
KisHDRMetadataOptions.h:35
KisHDRMetadataOptions::whiteY
qreal whiteY
Definition
KisHDRMetadataOptions.h:29
KisHDRMetadataOptions::blueX
qreal blueX
Definition
KisHDRMetadataOptions.h:25
KisHDRMetadataOptions::greenY
qreal greenY
Definition
KisHDRMetadataOptions.h:23
KisHDRMetadataOptions::greenX
qreal greenX
Definition
KisHDRMetadataOptions.h:22
KisHDRMetadataOptions::redX
qreal redX
Definition
KisHDRMetadataOptions.h:19
KisHDRMetadataOptions::whiteX
qreal whiteX
Definition
KisHDRMetadataOptions.h:28
KisHDRMetadataOptions::toProperties
KisPropertiesConfigurationSP toProperties() const
Definition
KisHDRMetadataOptions.cpp:17
KisHDRMetadataOptions::fromProperties
void fromProperties(KisPropertiesConfigurationSP config)
Definition
KisHDRMetadataOptions.cpp:44
KisHDRMetadataOptions::minLuminance
qreal minLuminance
Definition
KisHDRMetadataOptions.h:31
KisPropertiesConfiguration
Definition
kis_properties_configuration.cc:26
libs
ui
animation
KisHDRMetadataOptions.cpp
Generated at
2025-11-04 02:30:02+01:00
from
Krita
branch
master
, commit
c9dde2e79561a8aea4a7e8d9ac99c98a7bac9e52