[Mesa-dev] [PATCH 0/7] Support for samplerExternalOES YUV EGLImages

Kristian Høgsberg krh at bitplanet.net
Fri May 6 00:03:59 UTC 2016


From: Kristian Høgsberg Kristensen <krh at bitplanet.net>

This patche series adds support for importing YUV buffers as EGLImages
and sampling from them using samplerExternalOES. This series
implements the sampling by lowering the texture operation to 1-3
texture operations from the YUV planes and inserts color space
conversion in the shader.

Kristian Høgsberg Kristensen (7):
  nir: Add new 'plane' texture source type
  nir: Add a lowering pass for YUV textures
  i965: Create multiple miptrees planar YUV images
  i965: Support textures with multiple planes
  i965: Invoke lowering pass for YUV textures
  i965: Allow creating planar YUV __DRIimages
  dri: Add YVU formats

 include/GL/internal/dri_interface.h               |   5 +
 src/compiler/nir/nir.h                            |   8 ++
 src/compiler/nir/nir_lower_tex.c                  | 118 ++++++++++++++++++++++
 src/compiler/nir/nir_print.c                      |   3 +
 src/mesa/drivers/dri/i965/brw_compiler.h          |   8 ++
 src/mesa/drivers/dri/i965/brw_context.h           |   2 +-
 src/mesa/drivers/dri/i965/brw_fs_nir.cpp          |  13 +++
 src/mesa/drivers/dri/i965/brw_nir.c               |   4 +
 src/mesa/drivers/dri/i965/brw_shader.cpp          |   9 ++
 src/mesa/drivers/dri/i965/brw_wm.c                |  29 ++++++
 src/mesa/drivers/dri/i965/brw_wm_surface_state.c  |  38 ++++---
 src/mesa/drivers/dri/i965/gen7_wm_surface_state.c |   3 +-
 src/mesa/drivers/dri/i965/gen8_surface_state.c    |  12 ++-
 src/mesa/drivers/dri/i965/intel_mipmap_tree.c     |   3 +
 src/mesa/drivers/dri/i965/intel_mipmap_tree.h     |   5 +
 src/mesa/drivers/dri/i965/intel_screen.c          |  59 ++++++++---
 src/mesa/drivers/dri/i965/intel_tex_image.c       |  73 ++++++++++---
 src/mesa/drivers/dri/i965/intel_tex_obj.h         |   2 +
 18 files changed, 349 insertions(+), 45 deletions(-)

-- 
2.5.0



More information about the mesa-dev mailing list