Intel VA-API/OpenCL (CL-VA) interoperability#

Detailed Description#

This section describes Intel VA-API/OpenCL (CL-VA) interoperability.

To enable basic VA interoperability build OpenCV with libva library integration enabled: -DWITH_VA=ON (corresponding dev package should be installed).

To enable advanced CL-VA interoperability support on Intel HW, enable option: -DWITH_VA_INTEL=ON (OpenCL integration should be enabled which is the default setting). Special runtime environment should be set up in order to use this feature: correct combination of libva, OpenCL runtime and media driver should be installed.

Check usage example for details: samples/va_intel/va_intel_interop.cpp

Namespaces#

Function Documentation#

convertFromVASurface()#

void cv::va_intel::convertFromVASurface(
VADisplay display,
VASurfaceID surface,
Size size,
OutputArray dst )

#include <opencv2/core/va_intel.hpp>

Converts VASurfaceID object to OutputArray.

Parameters

  • display — - VADisplay object.

  • surface — - source VASurfaceID object.

  • size — - size of image represented by VASurfaceID object.

  • dst — - destination OutputArray.

convertToVASurface()#

void cv::va_intel::convertToVASurface(
VADisplay display,
InputArray src,
VASurfaceID surface,
Size size )

#include <opencv2/core/va_intel.hpp>

Converts InputArray to VASurfaceID object.

Parameters

  • display — - VADisplay object.

  • src — - source InputArray.

  • surface — - destination VASurfaceID object.

  • size — - size of image represented by VASurfaceID object.