From: Jason Ekstrand Date: Fri, 23 Jun 2017 03:00:47 +0000 (-0700) Subject: util/srgb: Add a float sRGB -> linear helper X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b55077a8bc1e85400b43141f9ed4a1f4a322b420;hp=cd5ce363e3fcf975c05a5f325292e95df8322cfb;p=mesa.git util/srgb: Add a float sRGB -> linear helper Reviewed-by: Nanley Chery Reviewed-by: Jason Ekstrand --- diff --git a/src/util/format_srgb.h b/src/util/format_srgb.h index 34b50afe3d1..596af56f4cd 100644 --- a/src/util/format_srgb.h +++ b/src/util/format_srgb.h @@ -54,6 +54,20 @@ extern const unsigned util_format_linear_to_srgb_helper_table[104]; +static inline float +util_format_srgb_to_linear_float(float cs) +{ + if (cs <= 0.0f) + return 0.0f; + else if (cs <= 0.04045f) + return cs / 12.92f; + else if (cs < 1.0f) + return powf((cs + 0.055) / 1.055f, 2.4f); + else + return 1.0f; +} + + static inline float util_format_linear_to_srgb_float(float cl) {