Skip to content

Commit cc4f30f

Browse files
Treehugger RobotAndroid (Google) Code Review
authored andcommitted
Merge "Fix display brightness for HDR layers during transitions" into main
2 parents 69e737f + 23ac46c commit cc4f30f

1 file changed

Lines changed: 10 additions & 9 deletions

File tree

services/surfaceflinger/SurfaceFlinger.cpp

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7823,15 +7823,16 @@ ftl::SharedFuture<FenceResult> SurfaceFlinger::renderScreenImpl(
78237823
// Otherwise for seamless transitions it's important to match the current
78247824
// display state as the buffer will be shown under these same conditions, and we
78257825
// want to avoid any flickers.
7826-
if (captureResults.capturedHdrLayers && !enableLocalTonemapping &&
7827-
args.sdrWhitePointNits > 1.0f && !args.seamlessTransition) {
7828-
// Restrict the amount of HDR "headroom" in the screenshot to avoid
7829-
// over-dimming the SDR portion. 2.0 chosen by experimentation
7830-
constexpr float kMaxScreenshotHeadroom = 2.0f;
7831-
// TODO: Aim to update displayBrightnessNits earlier in screenshot
7832-
// path so ScreenshotArgs can be passed as const
7833-
args.displayBrightnessNits = std::min(args.sdrWhitePointNits * kMaxScreenshotHeadroom,
7834-
args.displayBrightnessNits);
7826+
if (captureResults.capturedHdrLayers) {
7827+
if (!enableLocalTonemapping && args.sdrWhitePointNits > 1.0f && !args.seamlessTransition) {
7828+
// Restrict the amount of HDR "headroom" in the screenshot to avoid
7829+
// over-dimming the SDR portion. 2.0 chosen by experimentation
7830+
constexpr float kMaxScreenshotHeadroom = 2.0f;
7831+
// TODO: Aim to update displayBrightnessNits earlier in screenshot
7832+
// path so ScreenshotArgs can be passed as const
7833+
args.displayBrightnessNits = std::min(args.sdrWhitePointNits * kMaxScreenshotHeadroom,
7834+
args.displayBrightnessNits);
7835+
}
78357836
} else {
78367837
args.displayBrightnessNits = args.sdrWhitePointNits;
78377838
}

0 commit comments

Comments
 (0)