gstlibvaapi_headers += 'gstvaapiencoder_vp9.h'
endif
+if USE_H264_FEI_ENCODER
+ gstlibvaapi_sources += [
+ 'gstvaapifeiutils_h264.c',
+ 'gstvaapifei_objects.c',
+ 'gstvaapifeienc_h264.c',
+ 'gstvaapifeipak_h264.c',
+ 'gstvaapiencoder_h264_fei.c',
+ ]
+ gstlibvaapi_headers += [
+ 'gstvaapifeiutils_h264.h',
+ 'gstvaapifei_objects.h',
+ 'gstvaapifeienc_h264.h',
+ 'gstvaapifeipak_h264.h',
+ 'gstvaapiencoder_h264_fei.h',
+ ]
+endif
+
if USE_DRM
gstlibvaapi_sources += [
'gstvaapidisplay_drm.c',
vaapi_sources += 'gstvaapiencode_vp9.c'
endif
+if USE_H264_FEI_ENCODER
+ vaapi_sources += [
+ 'gstvaapifeivideometa.c',
+ 'gstvaapiencode_h264_fei.c',
+ ]
+endif
+
gstvaapi = library('gstvaapi',
vaapi_sources,
c_args : gstreamer_vaapi_args + ['-DGST_USE_UNSTABLE_API'],
USE_ENCODERS = get_option('with_encoders') != 'no'
USE_VP9_ENCODER = USE_ENCODERS and cc.has_header('va/va_enc_vp9.h', dependencies: libva_dep, prefix: '#include <va/va.h>')
+USE_H264_FEI_ENCODER = USE_ENCODERS and cc.has_header('va/va_fei_h264.h', dependencies: libva_dep, prefix: '#include <va/va.h>')
USE_DRM = libva_drm_dep.found() and libdrm_dep.found() and libudev_dep.found() and get_option('with_drm') != 'no'
USE_EGL = gmodule_dep.found() and egl_dep.found() and GLES_VERSION_MASK != 0 and get_option('with_egl') != 'no'
cdata.set10('USE_ENCODERS', USE_ENCODERS)
cdata.set10('USE_GLX', USE_GLX)
cdata.set10('USE_VP9_ENCODER', USE_VP9_ENCODER)
+cdata.set10('USE_H264_FEI_ENCODER', USE_H264_FEI_ENCODER)
cdata.set10('USE_WAYLAND', USE_WAYLAND)
cdata.set10('USE_X11', USE_X11)
cdata.set10('HAVE_XKBLIB', cc.has_header('X11/XKBlib.h', dependencies: x11_dep))
if USE_ENCODERS
test_examples += [ 'simple-encoder' ]
endif
+
+if USE_H264_FEI_ENCODER
+ test_examples += [
+ 'test-fei-enc-out',
+ 'test-fei-enc-in',
+ ]
+endif
+
if USE_GLX
test_examples += [ 'test-textures' ]
endif