backends/drm: ensure icc profiles aren't applied with HDR
ICC profiles don't support HDR yet, and they don't make a lot of sense with how unpredictable displays behave with BT2020 and/or PQ inputs
This commit is contained in:
parent
cdadf7cf7f
commit
bdc62b3516
1 changed files with 5 additions and 0 deletions
|
@ -349,7 +349,12 @@ void DrmOutput::applyQueuedChanges(const std::shared_ptr<OutputChangeSet> &props
|
|||
if (props->iccProfilePath) {
|
||||
next.iccProfilePath = *props->iccProfilePath;
|
||||
next.iccProfile = IccProfile::load(*props->iccProfilePath);
|
||||
}
|
||||
if (!next.highDynamicRange && !next.wideColorGamut) {
|
||||
m_pipeline->setIccProfile(next.iccProfile);
|
||||
} else {
|
||||
// ICC profiles don't support HDR (yet)
|
||||
m_pipeline->setIccProfile(nullptr);
|
||||
}
|
||||
if (m_state.highDynamicRange != next.highDynamicRange || m_state.sdrBrightness != next.sdrBrightness || m_state.wideColorGamut != next.wideColorGamut || m_state.iccProfile != next.iccProfile) {
|
||||
m_renderLoop->scheduleRepaint();
|
||||
|
|
Loading…
Reference in a new issue