summaryrefslogtreecommitdiff
path: root/gst/inter/gstinter.c
diff options
context:
space:
mode:
authorDavid Schleef <ds@schleef.org>2011-06-03 19:41:33 -0700
committerDavid Schleef <ds@schleef.org>2011-07-04 16:47:50 -0700
commite9f0e275966de64ec994b184498b9d8e2d8560a7 (patch)
treecf91839402e91dcfc316b107135070c4bf284ad5 /gst/inter/gstinter.c
parent2573de106218e3b7827d7679ef79ae5eda76d576 (diff)
downloadgstreamer-plugins-bad-e9f0e275966de64ec994b184498b9d8e2d8560a7.tar.gz
inter: new intermediate surface plugin
This set of elements allows easily rendering audio and video to an intermediate surface that is then used as a source in a different pipeline.
Diffstat (limited to 'gst/inter/gstinter.c')
-rw-r--r--gst/inter/gstinter.c51
1 files changed, 51 insertions, 0 deletions
diff --git a/gst/inter/gstinter.c b/gst/inter/gstinter.c
new file mode 100644
index 000000000..2ecc71df6
--- /dev/null
+++ b/gst/inter/gstinter.c
@@ -0,0 +1,51 @@
+/* GStreamer
+ * Copyright (C) 2011 FIXME <fixme@example.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street, Suite 500,
+ * Boston, MA 02110-1335, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "gstinteraudiosrc.h"
+#include "gstinteraudiosink.h"
+#include "gstintervideosrc.h"
+#include "gstintervideosink.h"
+#include "gstintersurface.h"
+
+static gboolean
+plugin_init (GstPlugin * plugin)
+{
+ gst_element_register (plugin, "interaudiosrc", GST_RANK_NONE,
+ GST_TYPE_INTER_AUDIO_SRC);
+ gst_element_register (plugin, "interaudiosink", GST_RANK_NONE,
+ GST_TYPE_INTER_AUDIO_SINK);
+ gst_element_register (plugin, "intervideosrc", GST_RANK_NONE,
+ GST_TYPE_INTER_VIDEO_SRC);
+ gst_element_register (plugin, "intervideosink", GST_RANK_NONE,
+ GST_TYPE_INTER_VIDEO_SINK);
+
+ gst_inter_surface_init ();
+
+ return TRUE;
+}
+
+GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
+ GST_VERSION_MINOR,
+ "inter",
+ "plugin for inter-pipeline communication",
+ plugin_init, VERSION, "LGPL", PACKAGE_NAME, GST_PACKAGE_ORIGIN)