plugin: Add GL uploader

Add "clappergluploader" module which uses "glupload" and "glcolorconvert" internally,
allowing either uploading RAW system memory into GPU with GL colorspace conversion or
importing DMABufs into GL memory and making a GdkTexture out of them at one go.
This commit is contained in:
Rafostar
2022-05-01 17:08:48 +02:00
committed by Rafał Dzięgiel
parent 3e0a0e0555
commit 0410c6e9b5
4 changed files with 294 additions and 0 deletions

View File

@@ -14,6 +14,7 @@ endif
plugin_needs_gl_base = (
not get_option('glimporter').disabled()
or not get_option('gluploader').disabled()
)
gst_plugin_gl_deps = [gstgl_dep, gstglproto_dep]
@@ -50,6 +51,8 @@ foreach dep : gst_clapper_gl_base_importer_deps
if not dep.found() or not have_gtk_gl_windowing
if get_option('glimporter').enabled()
error('GL importer was enabled, but required dependencies were not found')
elif get_option('gluploader').enabled()
error('GL uploader was enabled, but required dependencies were not found')
endif
plugin_needs_gl_base = false
endif
@@ -81,3 +84,15 @@ if not get_option('glimporter').disabled() and gst_clapper_gl_base_importer_dep.
install_dir: gst_clapper_importers_libdir,
)
endif
if not get_option('gluploader').disabled() and gst_clapper_gl_base_importer_dep.found()
library(
'gstclappergluploader',
'gstclappergluploader.c',
dependencies: gst_clapper_gl_base_importer_dep,
include_directories: configinc,
c_args: gst_clapper_plugin_args,
install: true,
install_dir: gst_clapper_importers_libdir,
)
endif