[Libva] [PATCH 00/16] libva: wayland support

Zhao Halley halley.zhao at intel.com
Tue Jun 5 02:06:48 PDT 2012


From: Halley Zhao <halley.zhao at intel.com>

wayland/weston is new compositor/display-server to enable direct 
communication between compositor and client:
  http://wayland.freedesktop.org/

this series of patch enables vaapi talking to weston and exchanging 
buffers basing on drm buffer (wayland-drm protocol)

the patches have been revised for several times, Benjamin created the initial
implementation last year, Gwenole reconstructed the code and APIs (introducing 
vaCreateSurfaceWL, vaDestroySurfaceWL, vaAttachSurfaceWL); finally Halley
revise the patches to use vaGetSurfaceBufferWl only basing on Gwenole's 
suggestion -- life cycle management of surface buffer relies on client of 
vaapi.

Now the patches work well to send XRGB buffer to weston. the interface also
supports YUV buffer between vaapi and weston

Benjamin Franzke (2):
  API: introduce DRM common utilities and data structures.
  Add PutSurface test for wayland

Gwenole Beauchesne (5):
  API: backend: rename dri_state to drm_state.
  API: backend: add VA display types.
  API: add support for Wayland.
  test: simplify va display construction
  tests: add support for Wayland.

Zhao halley (9):
  always use egl for wayland
  add wayland-drm protocol
  fix some include issue
  improve EGL check
  va wayland update to use vaGetSurfaceBufferWl
  use struct wl_buffer **
  update test case
  replace WL to Wl
  add vaGetImageBufferWl

 configure.ac                             |   48 ++++-
 pkgconfig/Makefile.am                    |    4 +
 pkgconfig/libva-wayland.pc.in            |   13 ++
 test/Makefile.am                         |    2 +-
 test/common/Makefile.am                  |   54 +++++
 test/common/va_display.c                 |   95 +++++++++
 test/common/va_display.h                 |   60 ++++++
 test/common/va_display_android.cpp       |   90 ++++++++
 test/common/va_display_wayland.c         |  204 ++++++++++++++++++
 test/common/va_display_x11.c             |  113 ++++++++++
 test/decode/Android.mk                   |    4 +-
 test/decode/Makefile.am                  |   28 ++-
 test/decode/mpeg2vldemo.cpp              |   84 ++------
 test/decode/tinyjpeg.c                   |   41 ++---
 test/putsurface/Makefile.am              |   27 ++-
 test/putsurface/putsurface_wayland.c     |  329 ++++++++++++++++++++++++++++++
 test/vainfo/Android.mk                   |    4 +-
 test/vainfo/Makefile.am                  |   26 ++-
 test/vainfo/vainfo.c                     |   28 +---
 va/Makefile.am                           |   14 ++-
 va/android/va_android.cpp                |   25 ++-
 va/glx/va_glx.c                          |    1 +
 va/va_backend.h                          |   24 ++-
 va/va_drmcommon.h                        |   46 ++++
 va/wayland/Makefile.am                   |   56 +++++
 va/wayland/protocol/wayland-drm.xml      |  139 +++++++++++++
 va/wayland/va_backend_wayland.h          |   57 +++++
 va/wayland/va_wayland.c                  |  193 +++++++++++++++++
 va/wayland/va_wayland.h                  |  123 +++++++++++
 va/wayland/va_wayland_drm.c              |  209 +++++++++++++++++++
 va/wayland/va_wayland_drm.h              |   47 +++++
 va/wayland/va_wayland_private.h          |   48 +++++
 va/wayland/wayland-drm-client-protocol.h |  196 ++++++++++++++++++
 va/x11/dri1_util.c                       |   28 ++--
 va/x11/dri2_util.c                       |   28 ++--
 va/x11/va_dricommon.c                    |   10 +-
 va/x11/va_dricommon.h                    |   12 +-
 va/x11/va_x11.c                          |    7 +-
 38 files changed, 2312 insertions(+), 205 deletions(-)
 mode change 100644 => 100755 configure.ac
 mode change 100644 => 100755 pkgconfig/Makefile.am
 create mode 100644 pkgconfig/libva-wayland.pc.in
 mode change 100644 => 100755 test/Makefile.am
 create mode 100644 test/common/Makefile.am
 create mode 100644 test/common/va_display.c
 create mode 100644 test/common/va_display.h
 create mode 100644 test/common/va_display_android.cpp
 create mode 100755 test/common/va_display_wayland.c
 create mode 100644 test/common/va_display_x11.c
 mode change 100644 => 100755 test/decode/Makefile.am
 mode change 100644 => 100755 test/decode/mpeg2vldemo.cpp
 mode change 100644 => 100755 test/decode/tinyjpeg.c
 mode change 100644 => 100755 test/putsurface/Makefile.am
 create mode 100755 test/putsurface/putsurface_wayland.c
 mode change 100644 => 100755 test/vainfo/Android.mk
 mode change 100644 => 100755 test/vainfo/Makefile.am
 mode change 100644 => 100755 test/vainfo/vainfo.c
 mode change 100644 => 100755 va/Makefile.am
 mode change 100644 => 100755 va/android/va_android.cpp
 mode change 100644 => 100755 va/glx/va_glx.c
 mode change 100644 => 100755 va/va_backend.h
 create mode 100644 va/va_drmcommon.h
 create mode 100644 va/wayland/Makefile.am
 create mode 100644 va/wayland/protocol/wayland-drm.xml
 create mode 100755 va/wayland/va_backend_wayland.h
 create mode 100755 va/wayland/va_wayland.c
 create mode 100755 va/wayland/va_wayland.h
 create mode 100644 va/wayland/va_wayland_drm.c
 create mode 100644 va/wayland/va_wayland_drm.h
 create mode 100644 va/wayland/va_wayland_private.h
 create mode 100644 va/wayland/wayland-drm-client-protocol.h
 mode change 100644 => 100755 va/x11/dri2_util.c
 mode change 100644 => 100755 va/x11/va_dricommon.c
 mode change 100644 => 100755 va/x11/va_dricommon.h
 mode change 100644 => 100755 va/x11/va_x11.c

-- 
1.7.5.4



More information about the Libva mailing list