> From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf > Of Xiang, Haihao > Sent: Monday, May 14, 2018 10:38 AM > To: ffmpeg-devel@ffmpeg.org > Subject: Re: [FFmpeg-devel] [PATCH] qsv: Use the installed mfx include > headers if possibile > > On Mon, 2018-05-14 at 00:50 +0000, Xiang, Haihao wrote: > > > On 11/05/18 08:52, Haihao Xiang wrote: > > > > Currently an extra copy of mfx include headers from > > > > {MSDK_INSTALL_PREFIX}/include to > {MSDK_INSTALL_PREFIX}/include/mfx > > > > is required when using pkg-config for libmfx detection. This fix > > > > checks the installed mfx include headers first, and falls back to > > > > the legacy way if that fails > > > > > > > > Signed-off-by: Haihao Xiang <haihao.xi...@intel.com> > > > > --- > > > > configure | 3 ++- > > > > fftools/ffmpeg_qsv.c | 5 +++++ > > > > libavcodec/qsv.c | 10 ++++++++++ > > > > libavcodec/qsv.h | 4 ++++ > > > > libavcodec/qsv_internal.h | 4 ++++ > > > > libavcodec/qsvdec.c | 4 ++++ > > > > libavcodec/qsvdec.h | 4 ++++ > > > > libavcodec/qsvdec_h2645.c | 4 ++++ > > > > libavcodec/qsvdec_other.c | 4 ++++ > > > > libavcodec/qsvenc.c | 5 +++++ > > > > libavcodec/qsvenc.h | 4 ++++ > > > > libavcodec/qsvenc_h264.c | 4 ++++ > > > > libavcodec/qsvenc_hevc.c | 4 ++++ > > > > libavcodec/qsvenc_jpeg.c | 4 ++++ > > > > libavcodec/qsvenc_mpeg2.c | 4 ++++ > > > > libavfilter/qsvvpp.h | 4 ++++ > > > > libavfilter/vf_deinterlace_qsv.c | 4 ++++ > > > > libavfilter/vf_scale_qsv.c | 4 ++++ > > > > libavutil/hwcontext_opencl.c | 4 ++++ > > > > libavutil/hwcontext_qsv.c | 4 ++++ > > > > libavutil/hwcontext_qsv.h | 4 ++++ > > > > 21 files changed, 90 insertions(+), 1 deletion(-) > > > > > > I don't think it's a good idea to put an #ifdef like this in every file. > > > > > > > > > > > diff --git a/configure b/configure index a1f13a7109..e1f72495fb > > > > 100755 > > > > --- a/configure > > > > +++ b/configure > > > > @@ -6007,7 +6007,8 @@ enabled libkvazaar && > require_pkg_config > > > > libkvazaar "kvazaar >= 0.8.1" kv > > > > # 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 > > > > "mfx/mfxvideo.h" MFXInit || > > > > +enabled libmfx && { { check_pkg_config libmfx libmfx > > > > "mfxvideo.h" MFXInit && add_cflags -DMFX_DEFAULT_INC_PATH; } || > > > > + { check_pkg_config libmfx > libmfx > > > > "mfx/mfxvideo.h" MFXInit; } || > > > > { require libmfx > "mfx/mfxvideo.h" > > > > MFXInit > > > > "- > > > > llibmfx $advapi32_extralibs" && warn "using libmfx without > > > > pkg-config"; } } > > > > enabled libmodplug && require_pkg_config libmodplug > libmodplug > > > > libmodplug/modplug.h ModPlug_Load > > > > enabled libmp3lame && require "libmp3lame >= 3.98.3" > lame/lame.h > > > > lame_set_VBR_quality -lmp3lame $libm_extralibs > > > > > > So in the current code, the first test is for the open-source > > > dispatcher (<htt ps://github.com/lu-zero/mfx_dispatch>), which gets > > > used everywhere that pkgconfig is supported, including mingw on > > > Windows. The second test is for Windows cases where you can't make > > > make pkgconfig work. > > > > > > What installs the headers directly in $PREFIX/include? Presumably > > > this is a new change - can we ask them not to do that? (Because > > > organising them in a subdirectory is I think much more sensible.) > > > > > > > Link below is the open-source version of MediaSDK which installs the > > headers directly in $PREFIX/include. User needn't the open-source > > dispatcher any more on Linux > > > > https://github.com/Intel-Media-SDK/MediaSDK > > > > I filed https://github.com/Intel-Media-SDK/MediaSDK/issues/199, hope they > can change the install path for mfx headers.
Changing it in open source MSDK should be a better solution. > > Thanks > Haihao _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel