diff --git a/include/wlr/render/pass.h b/include/wlr/render/pass.h index 1785ee562..9cce7c0a8 100644 --- a/include/wlr/render/pass.h +++ b/include/wlr/render/pass.h @@ -107,6 +107,10 @@ struct wlr_render_texture_options { enum wlr_color_transfer_function transfer_function; /* Primaries describing the color volume of the source texture */ const struct wlr_color_primaries *primaries; + /* Color encoding of the source texture for YCbCr conversion to RGB */ + enum wlr_color_encoding color_encoding; + /* Color range of the source texture */ + enum wlr_color_range color_range; /* Wait for a timeline synchronization point before texturing. * diff --git a/include/wlr/render/wlr_renderer.h b/include/wlr/render/wlr_renderer.h index 62a1cca2d..902d7564d 100644 --- a/include/wlr/render/wlr_renderer.h +++ b/include/wlr/render/wlr_renderer.h @@ -29,6 +29,8 @@ struct wlr_renderer { // Capabilities required for the buffer used as a render target (bitmask of // enum wlr_buffer_cap) uint32_t render_buffer_caps; + // Supported color encodings for YCbCr textures + uint32_t color_encodings; // bitmask of enum wlr_color_encoding struct { struct wl_signal destroy;