diff options
author | Chuanbo Weng <chuanbo.weng@intel.com> | 2015-02-02 14:42:30 +0800 |
---|---|---|
committer | Zhigang Gong <zhigang.gong@intel.com> | 2015-02-06 14:17:16 +0800 |
commit | 85cc6e5c50873722e29b2df2682795afba7b7ca4 (patch) | |
tree | a0c7d818e3f664a0438a5c0a7b95e15fe609b73e /CMakeLists.txt | |
parent | 79797d8646220e3537186e0bea63423ff9451d21 (diff) |
Add example to show libva buffer sharing with extension clCreateImageFromLibvaIntel.
This example reads a source nv12 file to a VASurface, and creates a
target
VASurface. Then creates corresponding cl image objects from them. After
using ocl to do mirror effect post-processing on source VASurface,
target
VASurface is shown on screen by default.
Code of loading nv12 file to VASurface are referenced from
libva/test/encode/avcenc.c.
v2:
Delete 1920x1080.nv12 and 640x480.nv12 because of large size, add
256_128.nv12 as default test image.
v3:
1. Re-org files: add libva as a submodule then use display related
files.
2. Show result on screen by default instead of saving as a file.
3. Fix warnings.
v4: Fix whitespace format warnings.
v5:
1. Modify upload_nv12_to_surface to read a nv12 file and then upload
it to an NV12 VASurface. Also modify store_surface_to_nv12.
2. Change the cl post-processing kernel from gray effect to mirror
effect, which make demo cooler.
3. Minor fix of other problems.
v6: Remove unnecessary OUTPUT_NV12_DEFAULT related code.
Signed-off-by: Chuanbo Weng <chuanbo.weng@intel.com>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Reviewed-by: "Guo, Yejun" <yejun.guo@intel.com>
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 38343c18..01ec1d81 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -183,6 +183,30 @@ ENDIF(OCLIcd_FOUND) Find_Package(PythonInterp) +OPTION(BUILD_EXAMPLES "Build examples" OFF) +IF(BUILD_EXAMPLES) +IF(NOT X11_FOUND) + MESSAGE(FATAL_ERROR "XLib is necessary for examples - not found") +ENDIF(NOT X11_FOUND) +# libva +pkg_check_modules(LIBVA REQUIRED libva>=0.36.0) +IF(LIBVA_FOUND) + MESSAGE(STATUS "Looking for LIBVA - found at ${LIBVA_PREFIX} ${LIBVA_VERSION}") + INCLUDE_DIRECTORIES(${LIBVA_INCLUDE_DIRS}) +ELSE(LIBVA_FOUND) + MESSAGE(STATUS "Looking for LIBVA (>= 0.36.0) - not found") +ENDIF(LIBVA_FOUND) + +# libva-x11 +pkg_check_modules(LIBVA-X11 REQUIRED libva-x11>=0.36.0) +IF(LIBVA-X11_FOUND) + MESSAGE(STATUS "Looking for LIBVA-X11 - found at ${LIBVA-X11_PREFIX} ${LIBVA-X11_VERSION}") + INCLUDE_DIRECTORIES(${LIBVA-X11_INCLUDE_DIRS}) +ELSE(LIBVA-X11_FOUND) + MESSAGE(STATUS "Looking for LIBVA-X11 (>= 0.36.0) - not found") +ENDIF(LIBVA-X11_FOUND) +ENDIF(BUILD_EXAMPLES) + ADD_SUBDIRECTORY(include) ADD_SUBDIRECTORY(backend) ADD_SUBDIRECTORY(src) @@ -193,6 +217,10 @@ IF (NOT (USE_STANDALONE_GBE_COMPILER STREQUAL "true")) ADD_SUBDIRECTORY(benchmark) ENDIF (NOT (USE_STANDALONE_GBE_COMPILER STREQUAL "true")) +IF(BUILD_EXAMPLES) +ADD_SUBDIRECTORY(examples) +ENDIF(BUILD_EXAMPLES) + SET(CPACK_PACKAGE_VERSION_MAJOR "${LIBCL_DRIVER_VERSION_MAJOR}") SET(CPACK_PACKAGE_VERSION_MINOR "${LIBCL_DRIVER_VERSION_MINOR}") SET(CPACK_PACKAGE_VERSION_PATCH "${LIBCL_DRIVER_VERSION_PATCH}") |