16 'gstqsvallocator_d3d11.cpp',
20 'gstqsvallocator_va.cpp',
24 '-DGST_USE_UNSTABLE_API',
27 qsv_option = get_option('qsv')
28 if qsv_option.disabled()
32 qsv_platform_deps = []
33 if host_system == 'windows'
34 if not gstd3d11_dep.found()
35 if qsv_option.enabled()
36 error('The qsv was enabled explicitly, but required d3d11 was not found')
44 #if !(WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) && !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP))
45 #error "Not building for UWP"
47 if cc.compiles(code, name : 'building for UWP')
48 if qsv_option.enabled()
49 error('qsv plugin does not support UWP')
55 qsv_sources += qsv_d3d11_sources
56 qsv_platform_deps += [gstd3d11_dep]
57 elif host_system == 'linux' and host_machine.cpu_family() == 'x86_64'
58 if not gstva_dep.found()
59 if qsv_option.enabled()
60 error('The qsv was enabled explicitly, but required va was not found')
65 qsv_sources += qsv_va_sources
66 qsv_platform_deps += [gstva_dep]
68 if qsv_option.enabled()
69 error('QSV plugin supports only Windows or Linux')
75 # suppress deprecated use of MFXInitEx. We don't use the method,
76 # but used in "mfxvideo++.h"
77 # and MinGW 32bits compiler seems to be complaining about redundant-decls
78 if cc.get_id() != 'msvc'
79 extra_args += cc.get_supported_arguments([
80 '-Wno-redundant-decls',
81 '-Wno-deprecated-declarations',
87 gstqsv = library('gstqsv',
89 c_args : gst_plugins_bad_args + extra_args,
90 cpp_args : gst_plugins_bad_args + extra_args,
91 include_directories : [configinc],
92 dependencies : [gstbase_dep, gstvideo_dep, gstcodecparsers_dep, libmfx_internal_dep] + qsv_platform_deps,
94 install_dir : plugins_install_dir,
97 pkgconfig.generate(gstqsv, install_dir : plugins_pkgconfig_install_dir)