[PATCH 0/5] Add generic buffer formats

Gwenole Beauchesne gb.devel at gmail.com
Fri Apr 20 07:39:51 PDT 2012


This series adds generic buffer formats (at the wl_buffer level) and YUV formats
in particular. I believe this is generally useful because even for SHM buffers,
we could also represent YUV contents in there. e.g. gstreamer sink.

Patch 1 adds the generic buffer types. Those are the most commonly used formats
only. Besides, I also dropped YUV/YVU variants as YVU is YUV with different layout.

Talking of which, Patch 2 adds some layout infrastructure. If you already have
an allocated SHM buffer around, it's theoritically possible to attach a particular
layout to it. However, I didn't want to expose that because if the user allocates
a YUV buffer, it will tend to have the same layout for the lifetime of the object.
And, if the layout needs to be changed, allocating a new buffer should not be that

Since I added the layout right into the wl_buffer base object, Patch 3 bumps the
version of its interface.

Patch 4 fills in layout information for SHM buffers.

Patch 5 adds some helpers to extract a sensible layout even if the buffer was
implemented for a former interface.

Gwenole Beauchesne (5):
  buffer: add generic buffer formats.
  buffer: add layout information.
  buffer: bump version.
  shm: fill in base buffer layout.
  buffer: add helper accessors.

 protocol/wayland.xml |   26 ++++++++++++++++++-
 src/wayland-server.c |   55 +++++++++++++++++++++++++++++++++++++++++
 src/wayland-server.h |    7 +++++
 src/wayland-shm.c    |   13 +++++++++
 src/wayland-util.c   |   67 ++++++++++++++++++++++++++++++++++++++++++++++++++
 src/wayland-util.h   |   22 ++++++++++++++++
 6 files changed, 189 insertions(+), 1 deletions(-)


More information about the wayland-devel mailing list