gstreamer/sys/nvcodec/meson.build
Seungha Yang cf5ef5635f nvcodec: Add CUDA specific memory and bufferpool
Introducing CUDA buffer pool with generic CUDA memory support.
Likewise GL memory, any elements which are able to access CUDA device
memory directly can map this CUDA memory without upload/download
overhead via the "GST_MAP_CUDA" map flag.
Also usual GstMemory map/unmap is also possible with internal staging memory.

For staging, CUDA Host allocated memory is used (see CuMemAllocHost API).
The memory is allowing system access but has lower overhead
during GPU upload/download than normal system memory.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1633>
2020-10-16 15:56:49 +00:00

40 lines
973 B
Meson

nvcodec_sources = [
'plugin.c',
'gstnvenc.c',
'gstnvbaseenc.c',
'gstnvh264enc.c',
'gstnvh265enc.c',
'gstcudaloader.c',
'gstnvdec.c',
'gstcuvidloader.c',
'gstcudacontext.c',
'gstcudautils.c',
'gstnvdecoder.c',
'gstnvh264dec.c',
'gstnvh265dec.c',
'gstcudamemory.c',
'gstcudabufferpool.c',
]
if get_option('nvcodec').disabled()
subdir_done()
endif
plugin_incdirs = [configinc, include_directories('./stub')]
extra_c_args = ['-DGST_USE_UNSTABLE_API']
if gstgl_dep.found()
extra_c_args += ['-DHAVE_NVCODEC_GST_GL=1']
endif
gstnvcodec = library('gstnvcodec',
nvcodec_sources,
c_args : gst_plugins_bad_args + extra_c_args,
include_directories : plugin_incdirs,
dependencies : [gstbase_dep, gstvideo_dep, gstpbutils_dep, gstgl_dep, gstglproto_dep, gmodule_dep, gstcodecs_dep],
install : true,
install_dir : plugins_install_dir,
)
pkgconfig.generate(gstnvcodec, install_dir : plugins_pkgconfig_install_dir)
plugins += [gstnvcodec]