meson: add nvdec modules

This commit is contained in:
Steve Lhomme 2024-11-14 12:19:08 +01:00
parent d5af5dd459
commit 0d71a71377
3 changed files with 38 additions and 1 deletions

View File

@ -725,9 +725,13 @@ option('sid',
value: 'auto',
description: 'C64 sid demux support')
option('nvdec',
type: 'feature',
value: 'auto',
description: 'NVDEC decoder support')
# TODO: Missing live555
# TODO: Missing v4l2
# TODO: Missing nvdec
# TODO: Missing decklink
# TODO: Missing rpi-omxil
# TODO: Missing gst-decode

View File

@ -1,5 +1,8 @@
# Hardware/GPU modules
# nvdec hw module
subdir('nvdec')
if host_system == 'windows'
# d3d11 interface module
subdir('d3d11')

View File

@ -0,0 +1,30 @@
if get_option('nvdec').allowed()
nvdec_dep = disabler()
if cc.check_header('ffnvcodec/dynlink_loader.h')
nvdec_dep = enabler()
elif cc.check_header('ffnvcodec/dynlink_loader.h', include_directories: include_directories( contrib_incdir ) )
nvdec_dep = declare_dependency(
include_directories: [include_directories( contrib_incdir )])
endif
endif
vlc_modules += {
'name' : 'nvdec',
'sources' : files('nvdec.c', 'hw_pool.c'),
'link_with' : [hxxxhelper_lib],
'dependencies' : [nvdec_dep, dl_lib],
'enabled' : nvdec_dep.found(),
}
vlc_modules += {
'name' : 'nvdec_chroma',
'sources' : files('chroma.c'),
'dependencies' : [nvdec_dep],
'enabled' : nvdec_dep.found(),
}
vlc_modules += {
'name' : 'glinterop_nvdec',
'sources' : files('nvdec_gl.c'),
'dependencies' : [ nvdec_dep, gl_common_dep, dl_lib ],
'enabled' : nvdec_dep.found() and gl_common_dep.found(),
}