[RFC PATCH 0/6] Initial per-surface color management
Niels Ole Salscheider
niels_ole at salscheider-online.de
Sun Mar 30 04:36:31 PDT 2014
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
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
More information about the wayland-devel