diff options
| author | 2023-06-14 14:41:10 -0400 | |
|---|---|---|
| committer | 2023-06-14 21:18:05 -0400 | |
| commit | 5b02fc47b36af39a94a22148eb49b85820d17a5f (patch) | |
| tree | 6b7cff0f197886726fe808671cf20a43b68770f0 /libs | |
| parent | 094946bd8c1a8f205417a21755023118857950f7 (diff) | |
Adjust screenshot behavior of HDR content
Cap the max amount of HDR headroom beyond which the
layer is clipped. This avoids over-dimming the SDR content
range in the resulting SDR screenshot
Test: screenshot of silkfx
Bug: 286942637
Change-Id: I67df32d9c192da18df516972ed92e9bd64063186
Diffstat (limited to 'libs')
| -rw-r--r-- | libs/renderengine/skia/SkiaRenderEngine.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libs/renderengine/skia/SkiaRenderEngine.cpp b/libs/renderengine/skia/SkiaRenderEngine.cpp index 5854135afe..fda6ea189e 100644 --- a/libs/renderengine/skia/SkiaRenderEngine.cpp +++ b/libs/renderengine/skia/SkiaRenderEngine.cpp @@ -86,6 +86,7 @@ namespace { // Debugging settings static const bool kPrintLayerSettings = false; static const bool kFlushAfterEveryLayer = kPrintLayerSettings; +static constexpr bool kEnableLayerBrightening = true; } // namespace @@ -699,7 +700,8 @@ void SkiaRenderEngine::drawLayersInternal( // ...and compute the dimming ratio if dimming is requested const float displayDimmingRatio = display.targetLuminanceNits > 0.f && - maxLayerWhitePoint > 0.f && display.targetLuminanceNits > maxLayerWhitePoint + maxLayerWhitePoint > 0.f && + (kEnableLayerBrightening || display.targetLuminanceNits > maxLayerWhitePoint) ? maxLayerWhitePoint / display.targetLuminanceNits : 1.f; |