summaryrefslogtreecommitdiffstats
path: root/gst/alpha
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.net>2007-04-24 09:12:42 +0000
committerTim-Philipp Müller <tim@centricular.net>2007-04-24 09:12:42 +0000
commit7002f0336ba04f7e85c81a6287221fa906da3f42 (patch)
tree17acb1a8a0c6e54a13ea167ae5c41abfade42e86 /gst/alpha
parent106db1b2eb7172c564151b3254c742f16676d95c (diff)
Add minimal docs blurb to alphacolor; split out headers into separate header file for gtk-doc.
Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/inspect/plugin-alphacolor.xml: * gst/alpha/Makefile.am: * gst/alpha/gstalphacolor.c: * gst/alpha/gstalphacolor.h: Add minimal docs blurb to alphacolor; split out headers into separate header file for gtk-doc.
Diffstat (limited to 'gst/alpha')
-rw-r--r--gst/alpha/Makefile.am2
-rw-r--r--gst/alpha/gstalphacolor.c48
-rw-r--r--gst/alpha/gstalphacolor.h57
3 files changed, 75 insertions, 32 deletions
diff --git a/gst/alpha/Makefile.am b/gst/alpha/Makefile.am
index daf0050b..67c20b74 100644
--- a/gst/alpha/Makefile.am
+++ b/gst/alpha/Makefile.am
@@ -11,3 +11,5 @@ libgstalphacolor_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) \
$(GST_BASE_CFLAGS) $(GST_CFLAGS)
libgstalphacolor_la_LIBADD = $(GST_LIBS) $(GST_BASE_LIBS)
libgstalphacolor_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+
+noinst_HEADERS = gstalphacolor.h
diff --git a/gst/alpha/gstalphacolor.c b/gst/alpha/gstalphacolor.c
index 15c26c12..118de628 100644
--- a/gst/alpha/gstalphacolor.c
+++ b/gst/alpha/gstalphacolor.c
@@ -17,11 +17,24 @@
* Boston, MA 02111-1307, USA.
*/
+/**
+ * SECTION:element-alphacolor
+ *
+ * <refsect2>
+ * <para>
+ * The alphacolor element does memory-efficient (in-place) colourspace
+ * conversion from RGBA to AYUV, preserving the alpha channel.
+ * </para>
+ * </refsect2>
+ */
+
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
+
+#include "gstalphacolor.h"
+
#include <gst/gst.h>
-#include <gst/base/gstbasetransform.h>
#include <gst/video/video.h>
#include <string.h>
@@ -29,40 +42,11 @@
GST_DEBUG_CATEGORY_STATIC (alpha_color_debug);
#define GST_CAT_DEFAULT alpha_color_debug
-#define GST_TYPE_ALPHA_COLOR \
- (gst_alpha_color_get_type())
-#define GST_ALPHA_COLOR(obj) \
- (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_ALPHA_COLOR,GstAlphaColor))
-#define GST_ALPHA_COLOR_CLASS(klass) \
- (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_ALPHA_COLOR,GstAlphaColorClass))
-#define GST_IS_ALPHA_COLOR(obj) \
- (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_ALPHA_COLOR))
-#define GST_IS_ALPHA_COLOR_CLASS(klass) \
- (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_ALPHA_COLOR))
-
-typedef struct _GstAlphaColor GstAlphaColor;
-typedef struct _GstAlphaColorClass GstAlphaColorClass;
-
-struct _GstAlphaColor
-{
- GstBaseTransform element;
-
- /* caps */
- gint in_width, in_height;
- gboolean in_rgba;
- gint out_width, out_height;
-};
-
-struct _GstAlphaColorClass
-{
- GstBaseTransformClass parent_class;
-};
-
/* elementfactory information */
static const GstElementDetails gst_alpha_color_details =
GST_ELEMENT_DETAILS ("Alpha color filter",
"Filter/Effect/Video",
- "RGB->YUV colorspace conversion preserving the alpha channels",
+ "RGBA to AYUV colorspace conversion preserving the alpha channel",
"Wim Taymans <wim@fluendo.com>");
static GstStaticPadTemplate gst_alpha_color_sink_template =
@@ -285,5 +269,5 @@ plugin_init (GstPlugin * plugin)
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
GST_VERSION_MINOR,
"alphacolor",
- "RGB->YUV colorspace conversion preserving the alpha channels",
+ "RGBA to AYUV colorspace conversion preserving the alpha channel",
plugin_init, VERSION, GST_LICENSE, GST_PACKAGE_NAME, GST_PACKAGE_ORIGIN)
diff --git a/gst/alpha/gstalphacolor.h b/gst/alpha/gstalphacolor.h
new file mode 100644
index 00000000..306cd2c6
--- /dev/null
+++ b/gst/alpha/gstalphacolor.h
@@ -0,0 +1,57 @@
+/* GStreamer alphacolor element
+ * Copyright (C) 2005 Wim Taymans <wim@fluendo.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., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifndef _GST_ALPHA_COLOR_H_
+#define _GST_ALPHA_COLOR_H_
+
+#include <gst/base/gstbasetransform.h>
+
+#define GST_TYPE_ALPHA_COLOR \
+ (gst_alpha_color_get_type())
+#define GST_ALPHA_COLOR(obj) \
+ (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_ALPHA_COLOR,GstAlphaColor))
+#define GST_ALPHA_COLOR_CLASS(klass) \
+ (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_ALPHA_COLOR,GstAlphaColorClass))
+#define GST_IS_ALPHA_COLOR(obj) \
+ (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_ALPHA_COLOR))
+#define GST_IS_ALPHA_COLOR_CLASS(klass) \
+ (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_ALPHA_COLOR))
+
+typedef struct _GstAlphaColor GstAlphaColor;
+typedef struct _GstAlphaColorClass GstAlphaColorClass;
+
+struct _GstAlphaColor
+{
+ GstBaseTransform element;
+
+ /*< private >*/
+ /* caps */
+ gint in_width, in_height;
+ gboolean in_rgba;
+ gint out_width, out_height;
+};
+
+struct _GstAlphaColorClass
+{
+ GstBaseTransformClass parent_class;
+};
+
+GType gst_alpha_color_get_type (void);
+
+#endif /* _GST_ALPHA_COLOR_H_ */