123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- set(MFX_DEFS "")
- if(NOT HAVE_MFX)
- find_package(VPL QUIET)
- if(VPL_FOUND)
- message(STATUS "VPL_VERSION: ${VPL_VERSION}")
- # NOTE: oneVPL since 2021.4 have version 2.4, version 2021.1 does not work
- if (VPL_VERSION VERSION_LESS "2021.2" AND VPL_VERSION VERSION_GREATER "2021.0")
- message(STATUS "VPL version is too old (${VPL_DIR} : ${VPL_VERSION}) - skipping")
- else()
- set(MFX_INCLUDE_DIRS "")
- set(MFX_LIBRARIES "${VPL_IMPORTED_TARGETS}")
- set(HAVE_MFX TRUE)
- list(APPEND MFX_DEFS "HAVE_ONEVPL")
- endif()
- endif()
- endif()
- set(paths)
- if(NOT HAVE_MFX)
- set(paths "${MFX_HOME}" ENV "MFX_HOME" ENV "INTELMEDIASDKROOT" ${paths})
- if(MSVC)
- if(MSVC_VERSION LESS 1900)
- set(vs_suffix)
- else()
- set(vs_suffix "_vs2015")
- endif()
- if(X86_64)
- set(vs_arch "x64")
- else()
- set(vs_arch "win32")
- endif()
- endif()
- find_path(MFX_INCLUDE mfxdefs.h
- PATHS ${paths}
- PATH_SUFFIXES "include" "include/mfx"
- NO_DEFAULT_PATH)
- find_library(MFX_LIBRARY NAMES mfx libmfx${vs_suffix}
- PATHS ${paths}
- PATH_SUFFIXES "lib64" "lib/lin_x64" "lib/${vs_arch}" "lib"
- NO_DEFAULT_PATH)
- if(MFX_INCLUDE AND MFX_LIBRARY)
- set(HAVE_MFX TRUE)
- set(MFX_INCLUDE_DIRS "${MFX_INCLUDE}")
- set(MFX_LIBRARIES "${MFX_LIBRARY}")
- list(APPEND MFX_DEFS "HAVE_MFX_PLUGIN")
- endif()
- endif()
- if(NOT HAVE_MFX AND PKG_CONFIG_FOUND)
- ocv_check_modules(MFX mfx)
- endif()
- if(HAVE_MFX AND UNIX)
- set(paths "${VA_ROOT_DIR}" ENV "VA_ROOT_DIR" ${paths})
- foreach(mode NO_DEFAULT_PATH "")
- find_path(MFX_va_INCLUDE va/va.h PATHS ${paths} PATH_SUFFIXES "include" ${mode})
- find_library(MFX_va_LIBRARY va PATHS ${paths} PATH_SUFFIXES "lib64" "lib/lin_x64" "lib" ${mode})
- find_library(MFX_va_drm_LIBRARY va-drm PATHS ${paths} PATH_SUFFIXES "lib64" "lib/lin_x64" "lib" ${mode})
- if(MFX_va_INCLUDE AND MFX_va_LIBRARY AND MFX_va_drm_LIBRARY)
- list(APPEND MFX_INCLUDE_DIRS "${MFX_va_INCLUDE}")
- list(APPEND MFX_LIBRARIES "${MFX_va_LIBRARY}" "${MFX_va_drm_LIBRARY}")
- # list(APPEND MFX_LIBRARIES "-Wl,--exclude-libs=libmfx")
- break()
- endif()
- unset(MFX_va_INCLUDE CACHE)
- unset(MFX_va_LIBRARY CACHE)
- unset(MFX_va_drm_LIBRARY CACHE)
- endforeach()
- if(NOT(MFX_va_INCLUDE AND MFX_va_LIBRARY AND MFX_va_drm_LIBRARY))
- message(STATUS "libva not found - turning MFX OFF")
- set(HAVE_MFX FALSE)
- endif()
- endif()
- if(HAVE_MFX)
- list(APPEND MFX_DEFS "HAVE_MFX")
- ocv_add_external_target(mediasdk "${MFX_INCLUDE_DIRS}" "${MFX_LIBRARIES}" "${MFX_DEFS}")
- endif()
|