RFC: surface crop and scale protocol extension

Jonny Lamb jonny.lamb at collabora.co.uk
Tue Nov 26 09:19:40 PST 2013


This is the initial version of the weston implementation of the
wl_scaler protocol extension for surface cropping and scaling. It is
based on the extension RFC version 3, written by Pekka Paalanen.
Earlier versions are:


RFC version 3 has one change: disallow zero values for dst_width and
dst_height, which is similar to a change I proposed for surface
scaling and transformations to wayland-devel a few days ago.

This initial patch set is in two parts:

 1. add new weston_buffer_viewport struct for buffer transformation
    and scaling, then related cleanups in working out surface size,

 2. implement cropping and scaling support in GL and pixman renderers,
    then add a demo client to test out these features.

The first part (by Pekka) can be pushed as is as it has nothing to do
with wl_scaler, but just cleans up related code in preparation for
wl_scaler code.

Cropping and scaling has not yet been implemented in the Raspberry Pi
renderer; this will happen at some point in the future.

Comments appreciated.

Jonny Lamb

More information about the wayland-devel mailing list