The following patches add initial support for per-surface color management in weston. The last patch allows to set a color profile in the "image" demo program.
It uses sRGB as blending color space for now because OpenGL ES 2.0 limits me to an 8 bit LUT and I would like to avoid losing precision. But we should use a linear blending space in the long term to get correct results. There are still a few open points: - should the color profile and LUT data be double-buffered? - borders and YUV surfaces should be color-corrected. - color correction is only implemented for the gl renderer. - the events for blending and output color space changes are not tested. Niels Ole Salscheider (6): Add colorcorrection protocol Attach input profiles and build corresponding LUTs Attach output profiles and build corresponding LUTs gl-renderer: Add necessary shaders for color correction gl-renderer: Correct colors during rendering image demo client: Add support for color management Makefile.am | 18 +- clients/image.c | 249 ++++++++++++++++++++++++++ protocol/colorcorrection.xml | 87 +++++++++ src/cms-colord.c | 4 +- src/cms-helper.c | 7 +- src/cms-helper.h | 3 +- src/cms-static.c | 1 + src/compositor.c | 222 +++++++++++++++++++++++ src/compositor.h | 27 +++ src/gl-renderer.c | 413 ++++++++++++++++++++++++++++++++++++++++--- 10 files changed, 1001 insertions(+), 30 deletions(-) create mode 100644 protocol/colorcorrection.xml -- 1.9.1 _______________________________________________ wayland-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/wayland-devel
