From 56688ce0789e54da414f65c7f13366133d6e9f71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= Date: Thu, 27 Dec 2018 17:35:00 +0100 Subject: [PATCH] gl: build gl mixer elements, moved from -base --- .../gst-plugins-base-plugins-docs.sgml | 5 ++ .../gst-plugins-base-plugins-sections.txt | 82 +++++++++++++++++++ ext/gl/Makefile.am | 32 ++++---- ext/gl/gstopengl.c | 25 +++--- ext/gl/meson.build | 18 ++-- 5 files changed, 121 insertions(+), 41 deletions(-) diff --git a/docs/plugins/gst-plugins-base-plugins-docs.sgml b/docs/plugins/gst-plugins-base-plugins-docs.sgml index 57659de187..a95f6eb980 100644 --- a/docs/plugins/gst-plugins-base-plugins-docs.sgml +++ b/docs/plugins/gst-plugins-base-plugins-docs.sgml @@ -71,14 +71,19 @@ + + + + + diff --git a/docs/plugins/gst-plugins-base-plugins-sections.txt b/docs/plugins/gst-plugins-base-plugins-sections.txt index c5c2b54b9a..fdbb50e6c5 100644 --- a/docs/plugins/gst-plugins-base-plugins-sections.txt +++ b/docs/plugins/gst-plugins-base-plugins-sections.txt @@ -885,6 +885,39 @@ GST_TYPE_GL_IMAGE_SINK_BIN gst_gl_image_sink_bin_get_type +
+element-glmixerbin +glmixerbin +GstGLMixerBin +GstGLMixerBinStartTimeSelection + +GstGLMixerBinClass +GST_GL_MIXER_BIN +GST_GL_MIXER_BIN_CAST +GST_IS_GL_MIXER_BIN +GST_GL_MIXER_BIN_CLASS +GST_IS_GL_MIXER_BIN_CLASS +GST_TYPE_GL_MIXER_BIN + +gst_gl_mixer_bin_get_type +
+ +
+element-glmosaic +glmosaic +GstGLMosaic + +GstGLMosaicClass +GST_GL_MOSAIC +GST_GL_MOSAIC_CAST +GST_IS_GL_MOSAIC +GST_GL_MOSAIC_CLASS +GST_IS_GL_MOSAIC_CLASS +GST_TYPE_GL_MOSAIC + +gst_gl_mosaic_get_type +
+
element-gloverlay gloverlay @@ -933,6 +966,22 @@ GST_TYPE_GL_SRC_BIN gst_gl_src_bin_get_type
+
+element-glstereomix +glstereomix +GstGLStereoMix + +GstGLStereoMixClass +GST_GL_STEREO_MIX +GST_GL_STEREO_MIX_CAST +GST_IS_GL_STEREO_MIX +GST_GL_STEREO_MIX_CLASS +GST_IS_GL_STEREO_MIX_CLASS +GST_TYPE_GL_STEREO_MIX + +gst_gl_stereo_mix_get_type +
+
element-glstereosplit glstereosplit @@ -995,6 +1044,39 @@ GST_TYPE_GL_UPLOAD_ELEMENT gst_gl_upload_element_get_type
+
+element-glvideomixerelement +glvideomixerelement +GstGLVideoMixer +GstGLVideoMixerBackground + +GstGLVideoMixerClass +GST_GL_VIDEO_MIXER +GST_GL_VIDEO_MIXER_CAST +GST_IS_GL_VIDEO_MIXER +GST_GL_VIDEO_MIXER_CLASS +GST_IS_GL_VIDEO_MIXER_CLASS +GST_TYPE_GL_VIDEO_MIXER + +gst_gl_video_mixer_get_type +
+ +
+element-glvideomixer +glvideomixer +GstGLVideoMixerBin + +GstGLVideoMixerBinClass +GST_GL_VIDEO_MIXER_BIN +GST_GL_VIDEO_MIXER_BIN_CAST +GST_IS_GL_VIDEO_MIXER_BIN +GST_GL_VIDEO_MIXER_BIN_CLASS +GST_IS_GL_VIDEO_MIXER_BIN_CLASS +GST_TYPE_GL_VIDEO_MIXER_BIN + +gst_gl_video_mixer_bin_get_type +
+
element-glviewconvert glviewconvert diff --git a/ext/gl/Makefile.am b/ext/gl/Makefile.am index 7c8c88651a..bf4bd114a4 100644 --- a/ext/gl/Makefile.am +++ b/ext/gl/Makefile.am @@ -1,17 +1,5 @@ plugin_LTLIBRARIES = libgstopengl.la -# These have to stay in -bad until we can move GstVideoAggregator to -base -# gstglbasemixer.c -# gstglbasemixer.h -# gstglmixer.c -# gstglmixer.h -# gstglmixerbin.h -# gstglmixerbin.c -# gstglstereomix.c -# gstglstereomix.h -# gstglvideomixer.c -# gstglvideomixer.h - libgstopengl_la_SOURCES = \ gstopengl.c \ gstglalpha.c \ @@ -43,13 +31,18 @@ libgstopengl_la_SOURCES = \ effects/gstgleffectblur.c \ effects/gstgleffectsobel.c \ effects/gstgleffectlaplacian.c \ + gstglbasemixer.c \ gstglcolorscale.c \ gstglcolorbalance.c \ + gstgldeinterlace.c \ gstglfiltershader.c \ gstglfilterapp.c \ - gstglviewconvert.c \ + gstglmixer.c \ + gstglmixerbin.c \ + gstglstereomix.c \ gstglstereosplit.c \ - gstgldeinterlace.c \ + gstglvideomixer.c \ + gstglviewconvert.c \ gltestsrc.c \ gstgltestsrc.c \ gstgloverlaycompositorelement.c \ @@ -67,12 +60,17 @@ noinst_HEADERS = \ gstglfiltercube.h \ gstgleffects.h \ effects/gstgleffectssources.h \ + gstglbasemixer.h \ gstglcolorscale.h \ gstglcolorbalance.h \ + gstgldeinterlace.h \ gstglfiltershader.h \ gstglfilterapp.h \ + gstglmixer.h \ + gstglmixerbin.h \ + gstglstereomix.h \ gstglstereosplit.h \ - gstgldeinterlace.h \ + gstglvideomixer.h \ gstglviewconvert.h \ gltestsrc.h \ gstgltestsrc.h \ @@ -81,13 +79,13 @@ noinst_HEADERS = \ # full opengl required if USE_OPENGL -# gstglmosaic.c libgstopengl_la_SOURCES += \ + gstglmosaic.c \ gstglfilterglass.c -# gstglmosaic.h noinst_HEADERS += \ gstglfilterglass.h \ + gstglmosaic.h \ effects/gstgleffectscurves.h \ effects/gstgleffectlumatocurve.h diff --git a/ext/gl/gstopengl.c b/ext/gl/gstopengl.c index 43f64626e3..302e8452ce 100644 --- a/ext/gl/gstopengl.c +++ b/ext/gl/gstopengl.c @@ -43,8 +43,6 @@ #include "config.h" #endif -#undef HAVE_VIDEO_AGGREGATOR_IN_BASE - #include "gstglimagesink.h" #include "gstgluploadelement.h" #include "gstgldownloadelement.h" @@ -58,11 +56,9 @@ #include "gstgleffects.h" #include "gstglcolorscale.h" -#ifdef HAVE_VIDEO_AGGREGATOR_IN_BASE #include "gstglmixerbin.h" #include "gstglvideomixer.h" #include "gstglstereomix.h" -#endif #include "gstglfiltershader.h" #include "gstglfilterapp.h" @@ -81,12 +77,17 @@ #include "gstgloverlay.h" #endif +#include "gstglmixerbin.h" +#include "gstglvideomixer.h" +#include "gstglstereomix.h" + +#if GST_GL_HAVE_OPENGL +#endif /* GST_GL_HAVE_OPENGL */ + #if GST_GL_HAVE_OPENGL #include "gstglfilterglass.h" /* #include "gstglfilterreflectedscreen.h" */ -#ifdef HAVE_VIDEO_AGGREGATOR_IN_BASE #include "gstglmosaic.h" -#endif #ifdef HAVE_PNG #include "gstgldifferencematte.h" /* #include "gstglbumper.h" */ @@ -169,12 +170,11 @@ plugin_init (GstPlugin * plugin) GST_RANK_NONE, GST_TYPE_GL_SRC_BIN)) { return FALSE; } -#ifdef HAVE_VIDEO_AGGREGATOR_IN_BASE + if (!gst_element_register (plugin, "glmixerbin", GST_RANK_NONE, GST_TYPE_GL_MIXER_BIN)) { return FALSE; } -#endif if (!gst_element_register (plugin, "glfiltercube", GST_RANK_NONE, GST_TYPE_GL_FILTER_CUBE)) { @@ -200,7 +200,7 @@ plugin_init (GstPlugin * plugin) GST_RANK_NONE, GST_TYPE_GL_COLORSCALE)) { return FALSE; } -#ifdef HAVE_VIDEO_AGGREGATOR_IN_BASE + if (!gst_element_register (plugin, "glvideomixer", GST_RANK_NONE, gst_gl_video_mixer_bin_get_type ())) { return FALSE; @@ -210,7 +210,6 @@ plugin_init (GstPlugin * plugin) GST_RANK_NONE, gst_gl_video_mixer_get_type ())) { return FALSE; } -#endif if (!gst_element_register (plugin, "glshader", GST_RANK_NONE, gst_gl_filtershader_get_type ())) { @@ -231,12 +230,11 @@ plugin_init (GstPlugin * plugin) GST_RANK_NONE, GST_TYPE_GL_STEREOSPLIT)) { return FALSE; } -#ifdef HAVE_VIDEO_AGGREGATOR_IN_BASE + if (!gst_element_register (plugin, "glstereomix", GST_RANK_NONE, GST_TYPE_GL_STEREO_MIX)) { return FALSE; } -#endif if (!gst_element_register (plugin, "gltestsrc", GST_RANK_NONE, GST_TYPE_GL_TEST_SRC)) { @@ -274,12 +272,11 @@ plugin_init (GstPlugin * plugin) return FALSE; } #endif -#ifdef HAVE_VIDEO_AGGREGATOR_IN_BASE + if (!gst_element_register (plugin, "glmosaic", GST_RANK_NONE, GST_TYPE_GL_MOSAIC)) { return FALSE; } -#endif #ifdef HAVE_PNG if (!gst_element_register (plugin, "gldifferencematte", GST_RANK_NONE, gst_gl_differencematte_get_type ())) { diff --git a/ext/gl/meson.build b/ext/gl/meson.build index 433134b419..8bbbcbe291 100644 --- a/ext/gl/meson.build +++ b/ext/gl/meson.build @@ -1,9 +1,3 @@ -# These have to stay in -bad until we can move GstVideoAggregator to -base -# 'gstglbasemixer.c', -# 'gstglmixerbin.c', -# 'gstglmixer.c', -# 'gstglvideomixer.c', -# 'gstglstereomix.c', opengl_sources = [ 'gstopengl.c', 'gstglalpha.c', @@ -35,13 +29,18 @@ opengl_sources = [ 'effects/gstgleffectblur.c', 'effects/gstgleffectsobel.c', 'effects/gstgleffectlaplacian.c', + 'gstglbasemixer.c', 'gstglcolorscale.c', 'gstglcolorbalance.c', + 'gstgldeinterlace.c', 'gstglfiltershader.c', 'gstglfilterapp.c', - 'gstglviewconvert.c', + 'gstglmixerbin.c', + 'gstglmixer.c', + 'gstglvideomixer.c', + 'gstglstereomix.c', 'gstglstereosplit.c', - 'gstgldeinterlace.c', + 'gstglviewconvert.c', 'gltestsrc.c', 'gstgltestsrc.c', 'gstgloverlaycompositorelement.c', @@ -55,10 +54,9 @@ endif optional_deps = [] if gl_dep.found() # have desktop GL - # These have to stay in -bad until we can move GstVideoAggregator to -base - # 'gstglmosaic.c', opengl_sources += [ 'gstglfilterglass.c', + 'gstglmosaic.c', ] endif