Dependencies
This extension is written against the OpenCL SPIR-V Environment Specification Version 2.2, Revision v2.2-3.
This extension requires OpenCL support for SPIR-V, either via OpenCL 2.1 or via the cl_khr_il_program extension, and support for the cl_intel_device_side_avc_motion_estimation extension.
Overview
This extension defines how modules using the SPIR-V extension SPV_INTEL_device_side_avc_motion_estimation may behave in an OpenCL environment.
This extension is a companion to the cl_intel_device_side_avc_motion_estimation OpenCL extension, and the functionality described in this extension and SPV_INTEL_device_side_avc_motion_estimation is sufficient to implement the built-in functions defined in the cl_intel_device_side_avc_motion_estimation extension.
Modifications to the OpenCL SPIR-V Environment Specification
Add a new Section 7.1.X - cl_intel_spirv_device_side_avc_motion_estimation
If the OpenCL environment supports the extension cl_intel_spirv_device_side_avc_motion_estimation, then the environment must accept SPIR-V modules that declare use of the SPV_INTEL_device_side_avc_motion_estimation extension via OpExtension.
If the OpenCL environment supports the extension cl_intel_spirv_device_side_avc_motion_estimation and use of the SPV_INTEL_device_side_avc_motion_estimation extension is declared in the module via OpExtension, then the environment must accept modules that declare the following SPIR-V capabilities:
-
SubgroupAvcMotionEstimationINTEL
-
SubgroupAvcMotionEstimationIntraINTEL
-
SubgroupAvcMotionEstimationChromaINTEL