v4l2_sources = [ 'gstv4l2.c', 'gstv4l2allocator.c', 'gstv4l2colorbalance.c', 'gstv4l2deviceprovider.c', 'gstv4l2object.c', 'gstv4l2bufferpool.c', 'gstv4l2sink.c', 'gstv4l2src.c', 'gstv4l2radio.c', 'gstv4l2tuner.c', 'gstv4l2transform.c', 'gstv4l2videodec.c', 'gstv4l2videoenc.c', 'gstv4l2h263enc.c', 'gstv4l2h264enc.c', 'gstv4l2mpeg4enc.c', 'gstv4l2vidorient.c', 'gstv4l2vp8enc.c', 'gstv4l2vp9enc.c', 'v4l2_calls.c', 'v4l2-utils.c', 'tuner.c', 'tunerchannel.c', 'tunernorm.c' ] cdata.set('GST_V4L2_ENABLE_PROBE', get_option('v4l2-probe')) if cc.has_header('linux/videodev2.h') or cc.has_header('sys/videodev2.h') or cc.has_header('sys/videoio.h') message('building v4l2 plugin') cdata.set('HAVE_GST_V4L2', true) gudev_dep = dependency('gudev-1.0', version : '>=147', required : false) cdata.set('HAVE_GUDEV', gudev_dep.found()) # libv4l2 is only needed for converting some obscure formats # FIXME: Add a full list of the formats here if get_option('libv4l2') libv4l2_dep = dependency('libv4l2', required : false) cdata.set('HAVE_LIBV4L2', libv4l2_dep.found()) libv4l2_deps = [libv4l2_dep] else libv4l2_deps = [] endif gstv4l2 = library('gstvideo4linux2', v4l2_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gstbase_dep, gstvideo_dep, gstallocators_dep, gudev_dep] + libv4l2_deps, install : true, install_dir : plugins_install_dir, ) pkgconfig.generate(gstv4l2, install_dir : plugins_pkgconfig_install_dir) endif