ffmpeg | branch: master | Haihao Xiang <[email protected]> | Wed Feb  3 
09:08:27 2021 +0800| [fea5aed2796e27377243c9d6fb5a85b5f4952746] | committer: 
Haihao Xiang

configure: ensure --enable-libmfx uses libmfx 1.x

Intel's oneVPL is a successor to MediaSDK, but removed some obsolete
features of MediaSDK[1], some early versions of oneVPL still use libmfx
as library name[2]. However some of obsolete features, including OPAQUE
memory, multi-frame encode, user plugins and LA_EXT rate control mode
etc, have been enabled in QSV, so user can not use --enable-libmfx to
enable QSV if using an early version of oneVPL SDK. In order to ensure
user builds FFmpeg against a right version of libmfx, this patch added a
check for version < 2.0 and warning message about the used obsolete
features.

[1] 
https://spec.oneapi.io/versions/latest/elements/oneVPL/source/VPL_intel_media_sdk.html
[2] https://github.com/oneapi-src/oneVPL

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

 configure | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/configure b/configure
index cbbb4dd9c8..1625ff1b5e 100755
--- a/configure
+++ b/configure
@@ -6583,10 +6583,12 @@ enabled liblensfun        && require_pkg_config 
liblensfun lensfun lensfun.h lf_
 # Media SDK or Intel Media Server Studio, these don't come with
 # pkg-config support.  Instead, users should make sure that the build
 # can find the libraries and headers through other means.
-enabled libmfx            && { check_pkg_config libmfx "libmfx >= 1.28" 
"mfx/mfxvideo.h" MFXInit ||
-                               { require libmfx "mfx/mfxvideo.h mfx/mfxdefs.h" 
MFXInit "-llibmfx $advapi32_extralibs" &&
-                                 { test_cpp_condition mfx/mfxdefs.h 
"MFX_VERSION >= 1028" || die "ERROR: libmfx version must be >= 1.28"; }  &&
-                                 warn "using libmfx without pkg-config"; } }
+enabled libmfx            && { { check_pkg_config libmfx "libmfx >= 1.28 
libmfx < 2.0" "mfx/mfxvideo.h" MFXInit ||
+                                 { require libmfx "mfx/mfxvideo.h 
mfx/mfxdefs.h" MFXInit "-llibmfx $advapi32_extralibs" &&
+                                   { test_cpp_condition mfx/mfxdefs.h 
"MFX_VERSION >= 1028 && MFX_VERSION < 2000" || die "ERROR: libmfx version must 
be >= 1.28 and < 2.0"; }  &&
+                                   warn "using libmfx without pkg-config"; } } 
&&
+                                 warn "build FFmpeg against libmfx 1.x, 
obsolete features of libmfx such as OPAQUE memory,\n"\
+                                   "multi-frame encode, user plugins and 
LA_EXT rate control mode are enabled"; }
 
 if enabled libmfx; then
    check_cc MFX_CODEC_VP9 "mfx/mfxvp9.h mfx/mfxstructures.h" "MFX_CODEC_VP9"

_______________________________________________
ffmpeg-cvslog mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog

To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".

Reply via email to