st/va: Implement vaExportSurfaceHandle()
authorMark Thompson <sw@jkqxz.net>
Sun, 1 Oct 2017 17:40:45 +0000 (18:40 +0100)
committerLeo Liu <leo.liu@amd.com>
Sat, 7 Oct 2017 14:15:14 +0000 (10:15 -0400)
commitc4ed39f85b1ebd062eaa51880fcc79cfbcb4e5c3
tree1c6afdcf2bda376e0325b6b71efe9804f7c4b666
parent52b73caaf40e79c90a105ec6d349abb3398e3c6b
st/va: Implement vaExportSurfaceHandle()

This is a new interface in libva2 to support wider use-cases of passing
surfaces to external APIs.  In particular, this allows export of NV12 and
P010 surfaces.

v2: Convert surfaces to progressive before exporting them (Christian).

v3: Set destination rectangle to match source when converting (Leo).
    Add guards to allow building with libva1.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
Acked-by: Christian König <christian.koenig@amd.com>
Acked-and-Tested-by: Leo Liu <leo.liu@amd.com>
src/gallium/state_trackers/va/context.c
src/gallium/state_trackers/va/surface.c
src/gallium/state_trackers/va/va_private.h