mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-23 08:46:40 +00:00
c6a6c56cdf
* Extend protocol so that client can notify of releasing shared memory * Server will hold shared memory object until it's released by client * Add allocator/buffer pool to reuse shared memory objects and buffers Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3765>
41 lines
1.1 KiB
Meson
41 lines
1.1 KiB
Meson
win32ipc_sources = [
|
|
'protocol/win32ipcmmf.cpp',
|
|
'protocol/win32ipcpipeclient.cpp',
|
|
'protocol/win32ipcpipeserver.cpp',
|
|
'protocol/win32ipcprotocol.cpp',
|
|
'protocol/win32ipcutils.cpp',
|
|
'gstwin32ipcbufferpool.cpp',
|
|
'gstwin32ipcmemory.cpp',
|
|
'gstwin32ipcutils.cpp',
|
|
'gstwin32ipcvideosink.cpp',
|
|
'gstwin32ipcvideosrc.cpp',
|
|
'plugin.cpp',
|
|
]
|
|
|
|
if host_system != 'windows' or get_option('win32ipc').disabled()
|
|
subdir_done()
|
|
endif
|
|
|
|
code = '''
|
|
#include <windows.h>
|
|
#if !(WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) && !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP))
|
|
#error "Not building for UWP"
|
|
#endif'''
|
|
if cc.compiles(code, name : 'building for UWP')
|
|
if get_option('win32ipc').enabled()
|
|
error('win32ipc plugin does not support UWP')
|
|
else
|
|
subdir_done()
|
|
endif
|
|
endif
|
|
|
|
gstwin32ipc = library('gstwin32ipc',
|
|
win32ipc_sources,
|
|
c_args : gst_plugins_bad_args,
|
|
cpp_args: gst_plugins_bad_args,
|
|
include_directories : [configinc],
|
|
dependencies : [gstbase_dep, gstvideo_dep],
|
|
install : true,
|
|
install_dir : plugins_install_dir,
|
|
)
|
|
plugins += [gstwin32ipc]
|