[FFmpeg-cvslog] configure: fix check for opencl_vaapi_intel_media.

Jun Zhao git at videolan.org
Fri Jun 29 00:37:17 EEST 2018


ffmpeg | branch: master | Jun Zhao <mypopydev at gmail.com> | Sat Jun  2 11:06:50 2018 +0800| [2730a0fdf47c6ecbb6029d2b0dc47a27b377bcee] | committer: Jun Zhao

configure: fix check for opencl_vaapi_intel_media.

opencl_vaapi_intel_media doesn't depend on libmfx, OpenCLâ„¢ Drivers
and Runtimes for Intel® Architectureis is a standalone release, more
information can be found in the link:
https://software.intel.com/en-us/articles/opencl-drivers.

Signed-off-by: Jun Zhao <mypopydev at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2730a0fdf47c6ecbb6029d2b0dc47a27b377bcee
---

 configure                    | 6 ++----
 libavutil/hwcontext_opencl.c | 7 ++++++-
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/configure b/configure
index 230b39784d..0e8e8a628b 100755
--- a/configure
+++ b/configure
@@ -6336,10 +6336,8 @@ fi
 
 if enabled_all opencl vaapi ; then
     enabled opencl_drm_beignet && enable opencl_vaapi_beignet
-    if enabled libmfx ; then
-        check_type "CL/cl.h CL/va_ext.h" "clCreateFromVA_APIMediaSurfaceINTEL_fn" &&
-            enable opencl_vaapi_intel_media
-    fi
+    check_type "CL/cl.h CL/va_ext.h" "clCreateFromVA_APIMediaSurfaceINTEL_fn" &&
+        enable opencl_vaapi_intel_media
 fi
 
 if enabled_all opencl dxva2 ; then
diff --git a/libavutil/hwcontext_opencl.c b/libavutil/hwcontext_opencl.c
index f2873e15d2..06448c657d 100644
--- a/libavutil/hwcontext_opencl.c
+++ b/libavutil/hwcontext_opencl.c
@@ -46,7 +46,9 @@
 #endif
 
 #if HAVE_OPENCL_VAAPI_INTEL_MEDIA
+#if CONFIG_LIBMFX
 #include <mfx/mfxstructures.h>
+#endif
 #include <va/va.h>
 #include <CL/va_ext.h>
 #include "hwcontext_vaapi.h"
@@ -2245,10 +2247,13 @@ static int opencl_map_from_qsv(AVHWFramesContext *dst_fc, AVFrame *dst,
     cl_int cle;
     int err, p;
 
+#if CONFIG_LIBMFX
     if (src->format == AV_PIX_FMT_QSV) {
         mfxFrameSurface1 *mfx_surface = (mfxFrameSurface1*)src->data[3];
         va_surface = *(VASurfaceID*)mfx_surface->Data.MemId;
-    } else if (src->format == AV_PIX_FMT_VAAPI) {
+    } else
+#endif
+        if (src->format == AV_PIX_FMT_VAAPI) {
         va_surface = (VASurfaceID)(uintptr_t)src->data[3];
     } else {
         return AVERROR(ENOSYS);



More information about the ffmpeg-cvslog mailing list