From 1a3c5456dd9e05642c3d0f388102c511e80b5108 Mon Sep 17 00:00:00 2001 From: Alec Mouri Date: Fri, 4 Mar 2022 22:44:51 +0000 Subject: Add AHardwareBuffer as a tone-mapping input. This is to allow for partners to take gralloc4 metadata into account for their tone-mapping operation. Bug: 212641375 Test: builds Change-Id: Id20291fc1a1a0350a7fff0a8e703f242c68d2b28 --- libs/shaders/shaders.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'libs/shaders/shaders.cpp') diff --git a/libs/shaders/shaders.cpp b/libs/shaders/shaders.cpp index 03da3ecd62..0d77519ab7 100644 --- a/libs/shaders/shaders.cpp +++ b/libs/shaders/shaders.cpp @@ -476,7 +476,8 @@ std::vector buildLinearEffectUniforms(const LinearEffect const mat4& colorTransform, float maxDisplayLuminance, float currentDisplayLuminanceNits, - float maxLuminance) { + float maxLuminance, + AHardwareBuffer* buffer) { std::vector uniforms; if (linearEffect.inputDataspace == linearEffect.outputDataspace) { uniforms.push_back({.name = "in_rgbToXyz", .value = buildUniformValue(mat4())}); @@ -504,7 +505,8 @@ std::vector buildLinearEffectUniforms(const LinearEffect // This will be the case for eg screenshots in addition to // uncalibrated displays .contentMaxLuminance = - maxLuminance > 0 ? maxLuminance : maxDisplayLuminance}; + maxLuminance > 0 ? maxLuminance : maxDisplayLuminance, + .buffer = buffer}; for (const auto uniform : tonemap::getToneMapper()->generateShaderSkSLUniforms(metadata)) { uniforms.push_back(uniform); @@ -513,4 +515,4 @@ std::vector buildLinearEffectUniforms(const LinearEffect return uniforms; } -} // namespace android::shaders \ No newline at end of file +} // namespace android::shaders -- cgit v1.2.3-59-g8ed1b