From 7002f0336ba04f7e85c81a6287221fa906da3f42 Mon Sep 17 00:00:00 2001 From: Tim-Philipp Müller Date: Tue, 24 Apr 2007 09:12:42 +0000 Subject: 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. --- gst/alpha/Makefile.am | 2 ++ gst/alpha/gstalphacolor.c | 48 +++++++++++++-------------------------- gst/alpha/gstalphacolor.h | 57 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 75 insertions(+), 32 deletions(-) create mode 100644 gst/alpha/gstalphacolor.h (limited to 'gst/alpha') 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 + * + * + * + * The alphacolor element does memory-efficient (in-place) colourspace + * conversion from RGBA to AYUV, preserving the alpha channel. + * + * + */ + #ifdef HAVE_CONFIG_H #include "config.h" #endif + +#include "gstalphacolor.h" + #include -#include #include #include @@ -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 "); 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 + * + * 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 + +#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_ */ -- cgit