summaryrefslogtreecommitdiff
path: root/libs/shaders/shaders.cpp
diff options
context:
space:
mode:
author Alec Mouri <alecmouri@google.com> 2023-08-02 22:41:52 +0000
committer Alec Mouri <alecmouri@google.com> 2023-08-04 18:26:38 +0000
commitfad6ef537b2e96a6f5aaeb6a70dd63fc389e18ff (patch)
treeb14bb86dc2b9c000835d79d5dfacaac2e909e478 /libs/shaders/shaders.cpp
parent8729f8247b81db774741ac87816a7b52801826b6 (diff)
Fix extended range handling when Gamma OETF is used
Populating fakeOutputDataspace got dropped, which turned off the one-off workaround to bypass skia's color management to encode as gamma 2.2. Turn it back on to prevent flickers on some devices. Bug: 293311643 Test: SilkFX test app Change-Id: I4370756c48fe79c1b4fcbd88a3bf2579fde1bf65 (cherry picked from commit e0bb6f4ff13cc45b61a1b0edccbf875bb3871c89)
Diffstat (limited to 'libs/shaders/shaders.cpp')
-rw-r--r--libs/shaders/shaders.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/libs/shaders/shaders.cpp b/libs/shaders/shaders.cpp
index c85517a976..ef039e5c36 100644
--- a/libs/shaders/shaders.cpp
+++ b/libs/shaders/shaders.cpp
@@ -168,8 +168,8 @@ void generateOOTF(ui::Dataspace inputDataspace, ui::Dataspace outputDataspace,
void generateOETF(std::string& shader) {
// Only support gamma 2.2 for now
shader.append(R"(
- float OETF(float3 linear) {
- return sign(linear) * pow(abs(linear), (1.0 / 2.2));
+ float3 OETF(float3 linear) {
+ return sign(linear) * pow(abs(linear), float3(1.0 / 2.2));
}
)");
}