Add docs for adder, use GST_ELEMENT_DETAILS macro, define GstElementDetails at the top
authorStefan Kost <ensonic@users.sourceforge.net>
Fri, 24 Mar 2006 10:42:11 +0000 (10:42 +0000)
committerStefan Kost <ensonic@users.sourceforge.net>
Fri, 24 Mar 2006 10:42:11 +0000 (10:42 +0000)
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* ext/cdparanoia/gstcdparanoiasrc.c:
* ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_base_init),
(gst_gnome_vfs_sink_class_init):
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_base_init):
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_base_init):
* ext/ogg/gstoggmux.c:
* ext/ogg/gstoggparse.c: (gst_ogg_parse_base_init):
* ext/ogg/gstogmparse.c: (gst_ogm_audio_parse_base_init),
(gst_ogm_video_parse_base_init), (gst_ogm_text_parse_base_init):
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* gst-libs/gst/audio/gstaudiofilter.c:
(gst_audio_filter_base_init):
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
(gst_audio_filter_template_base_init):
* gst/adder/gstadder.c: (gst_adder_get_type):
* gst/adder/gstadder.h:
* gst/audioconvert/gstaudioconvert.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audiostestsrc_wave_get_type), (gst_audio_test_src_class_init),
(gst_audio_test_src_create):
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/playback/gstdecodebin.c:
* gst/playback/gstplaybin.c:
* gst/playback/gststreamselector.c:
(gst_stream_selector_base_init):
* gst/subparse/gstsubparse.c: (gst_sub_parse_base_init):
* gst/volume/gstvolume.c:
* sys/v4l/gstv4lmjpegsink.c:
* sys/v4l/gstv4lmjpegsrc.c:
* tests/check/libs/cddabasesrc.c:
* tests/old/examples/gob/gst-identity2.gob:
Add docs for adder, use GST_ELEMENT_DETAILS macro,
define GstElementDetails at the top

32 files changed:
ChangeLog
docs/plugins/Makefile.am
docs/plugins/gst-plugins-base-plugins-docs.sgml
docs/plugins/gst-plugins-base-plugins-sections.txt
ext/cdparanoia/gstcdparanoiasrc.c
ext/gnomevfs/gstgnomevfssink.c
ext/gnomevfs/gstgnomevfssrc.c
ext/ogg/gstoggdemux.c
ext/ogg/gstoggparse.c
ext/ogg/gstogmparse.c
ext/pango/gsttextoverlay.c
ext/pango/gsttextrender.c
ext/theora/theoradec.c
ext/theora/theoraenc.c
ext/vorbis/vorbisdec.c
ext/vorbis/vorbisenc.c
gst-libs/gst/audio/gstaudiofilter.c
gst-libs/gst/audio/gstaudiofiltertemplate.c
gst/adder/gstadder.c
gst/adder/gstadder.h
gst/audioconvert/gstaudioconvert.c
gst/audiotestsrc/gstaudiotestsrc.c
gst/ffmpegcolorspace/gstffmpegcolorspace.c
gst/playback/gstdecodebin.c
gst/playback/gstplaybin.c
gst/playback/gststreamselector.c
gst/subparse/gstsubparse.c
gst/volume/gstvolume.c
sys/v4l/gstv4lmjpegsink.c
sys/v4l/gstv4lmjpegsrc.c
tests/check/libs/cddabasesrc.c
tests/old/examples/gob/gst-identity2.gob

index 3928abd9a1b1e30be9d0efba7f58605b9915ebe3..2416a4520baf3bce2495e200ae0798a3af2aea6f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,47 @@
+2006-03-24  Stefan Kost  <ensonic@users.sf.net>
+
+       * docs/plugins/Makefile.am:
+       * docs/plugins/gst-plugins-base-plugins-docs.sgml:
+       * docs/plugins/gst-plugins-base-plugins-sections.txt:
+       * ext/cdparanoia/gstcdparanoiasrc.c:
+       * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_base_init),
+       (gst_gnome_vfs_sink_class_init):
+       * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_base_init):
+       * ext/ogg/gstoggdemux.c: (gst_ogg_demux_base_init):
+       * ext/ogg/gstoggmux.c:
+       * ext/ogg/gstoggparse.c: (gst_ogg_parse_base_init):
+       * ext/ogg/gstogmparse.c: (gst_ogm_audio_parse_base_init),
+       (gst_ogm_video_parse_base_init), (gst_ogm_text_parse_base_init):
+       * ext/pango/gsttextoverlay.c:
+       * ext/pango/gsttextrender.c:
+       * ext/theora/theoradec.c:
+       * ext/theora/theoraenc.c:
+       * ext/vorbis/vorbisdec.c:
+       * ext/vorbis/vorbisenc.c:
+       * gst-libs/gst/audio/gstaudiofilter.c:
+       (gst_audio_filter_base_init):
+       * gst-libs/gst/audio/gstaudiofiltertemplate.c:
+       (gst_audio_filter_template_base_init):
+       * gst/adder/gstadder.c: (gst_adder_get_type):
+       * gst/adder/gstadder.h:
+       * gst/audioconvert/gstaudioconvert.c:
+       * gst/audiotestsrc/gstaudiotestsrc.c:
+       (gst_audiostestsrc_wave_get_type), (gst_audio_test_src_class_init),
+       (gst_audio_test_src_create):
+       * gst/ffmpegcolorspace/gstffmpegcolorspace.c:
+       * gst/playback/gstdecodebin.c:
+       * gst/playback/gstplaybin.c:
+       * gst/playback/gststreamselector.c:
+       (gst_stream_selector_base_init):
+       * gst/subparse/gstsubparse.c: (gst_sub_parse_base_init):
+       * gst/volume/gstvolume.c:
+       * sys/v4l/gstv4lmjpegsink.c:
+       * sys/v4l/gstv4lmjpegsrc.c:
+       * tests/check/libs/cddabasesrc.c:
+       * tests/old/examples/gob/gst-identity2.gob:
+        Add docs for adder, use GST_ELEMENT_DETAILS macro,
+        define GstElementDetails at the top
+
 2006-03-23  Sebastien Moutte  <sebastien@moutte.net>
 
        * win32/common/libgstinterfaces.def:
index c39b8a138052f1ce82ea4e3fbf7134c31f5e3d8b..ed7ce59e4434c12b9db92392d2115d98d198b8d5 100644 (file)
@@ -74,10 +74,10 @@ IGNORE_CFILES = utils.c mem.c imgconvert.c
 # the registry won't have the element
 
 EXTRA_HFILES = \
-       $(top_srcdir)/ext/cdparanoia/gstcdparanoiasrc.h \
        $(top_srcdir)/ext/alsa/gstalsamixerelement.h \
        $(top_srcdir)/ext/alsa/gstalsasink.h \
        $(top_srcdir)/ext/alsa/gstalsasrc.h \
+       $(top_srcdir)/ext/cdparanoia/gstcdparanoiasrc.h \
        $(top_srcdir)/ext/gnomevfs/gstgnomevfssink.h \
        $(top_srcdir)/ext/gnomevfs/gstgnomevfssrc.h \
        $(top_srcdir)/ext/pango/gstclockoverlay.h \
@@ -89,6 +89,7 @@ EXTRA_HFILES = \
        $(top_srcdir)/ext/vorbis/vorbisdec.h \
        $(top_srcdir)/ext/vorbis/vorbisenc.h \
        $(top_srcdir)/ext/vorbis/vorbisparse.h \
+       $(top_srcdir)/gst/adder/gstadder.h \
        $(top_srcdir)/gst/audioconvert/gstaudioconvert.h \
        $(top_srcdir)/gst/audioresample/gstaudioresample.h \
        $(top_srcdir)/gst/audiotestsrc/gstaudiotestsrc.h \
index 5b4a520b74fc1964407b5d73611dd12053380158..199e7264b2579d0e922d7cdc1b97fb2a2d3859e8 100644 (file)
@@ -12,6 +12,7 @@
 
   <chapter>
     <title>gst-plugins-base Elements</title>
+    <xi:include href="xml/element-adder.xml" />
     <xi:include href="xml/element-alsamixer.xml" />
     <xi:include href="xml/element-alsasink.xml" />
     <xi:include href="xml/element-alsasrc.xml" />
index 55cb9ea7a1a14d4007fd87d46c3a41aa2419c95c..e86dbc3d56c29d0d40fd817fd7b9d3263fedd169 100644 (file)
@@ -1,3 +1,19 @@
+<SECTION>
+<FILE>element-adder</FILE>
+<TITLE>adder</TITLE>
+GstAdder
+<SUBSECTION Standard>
+GST_ADDER
+GST_IS_ADDER
+GST_TYPE_ADDER
+gst_adder_factory_init
+gst_adder_get_type
+GST_ADDER_CLASS
+GST_IS_ADDER_CLASS
+GstAdderClass
+GstAdderFormat
+</SECTION>
+
 <SECTION>
 <FILE>element-alsamixer</FILE>
 GstAlsaMixerElement
index a8571d0289bb64a4cb1a6c29f2232fdd9171b407..c408d4de6b24736cd8a634a8626d7c39c9a79ee1 100644 (file)
@@ -2,7 +2,7 @@
 /* GStreamer
  * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
  *               <2005> Wim Taymans <wim@fluendo.com>
- *               <2005> Tim-Philipp Müller <tim centricular net>
+ *               <2005> Tim-Philipp M??ller <tim centricular net>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -68,12 +68,11 @@ static gboolean gst_cd_paranoia_src_open (GstCddaBaseSrc * src,
     const gchar * device);
 static void gst_cd_paranoia_src_close (GstCddaBaseSrc * src);
 
-static GstElementDetails cdparanoia_details = {
-  "CD Audio (cdda) Source, Paranoia IV",
-  "Source/File",
-  "Read audio from CD in paranoid mode",
-  "Erik Walthinsen <omega@cse.ogi.edu>, " "Wim Taymans <wim@fluendo.com>"
-};
+static GstElementDetails cdparanoia_details =
+GST_ELEMENT_DETAILS ("CD Audio (cdda) Source, Paranoia IV",
+    "Source/File",
+    "Read audio from CD in paranoid mode",
+    "Erik Walthinsen <omega@cse.ogi.edu>, " "Wim Taymans <wim@fluendo.com>");
 
 /* We use these to serialize calls to paranoia_read() among several
  * cdparanoiasrc instances. We do this because it's the only reasonably
index 61fe63645f2dbf7fec816e641386dd201c8f7c56..f6dbb3db63323679315b99e3f9893beab67cc2c1 100644 (file)
@@ -3,7 +3,7 @@
  *                    2000 Wim Taymans <wtay@chello.be>
  *                    2001 Bastien Nocera <hadess@hadess.net>
  *                    2003 Colin Walters <walters@verbum.org>
- *                    2005 Tim-Philipp Müller <tim centricular net>
+ *                    2005 Tim-Philipp M??ller <tim centricular net>
  *
  * gstgnomevfssink.c: 
  *
 #include <string.h>
 #include <errno.h>
 
+static GstElementDetails gst_gnome_vfs_sink_details =
+GST_ELEMENT_DETAILS ("GnomeVFS Sink",
+    "Sink/File",
+    "Write a stream to a GnomeVFS URI",
+    "Bastien Nocera <hadess@hadess.net>");
+
 enum
 {
   SIGNAL_ERASE_ASK,
@@ -139,11 +145,6 @@ static void
 gst_gnome_vfs_sink_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
-  static GstElementDetails gst_gnome_vfs_sink_details =
-      GST_ELEMENT_DETAILS ("GnomeVFS Sink",
-      "Sink/File",
-      "Write a stream to a GnomeVFS URI",
-      "Bastien Nocera <hadess@hadess.net>");
 
   gst_element_class_add_pad_template (element_class,
       gst_static_pad_template_get (&sinktemplate));
index 274fff184080a52279264d686a43b0ac124066fb..bae262deaeb7df2c6a929cbebf40e87138a5b30e 100644 (file)
 GST_DEBUG_CATEGORY_STATIC (gnomevfssrc_debug);
 #define GST_CAT_DEFAULT gnomevfssrc_debug
 
+static GstElementDetails gst_gnome_vfs_src_details =
+GST_ELEMENT_DETAILS ("GnomeVFS Source",
+    "Source/File",
+    "Read from any GnomeVFS-supported file",
+    "Bastien Nocera <hadess@hadess.net>\n"
+    "Ronald S. Bultje <rbultje@ronald.bitfreak.net>");
 
 static GStaticMutex count_lock = G_STATIC_MUTEX_INIT;
 static gint ref_count = 0;
@@ -183,12 +189,6 @@ static void
 gst_gnome_vfs_src_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
-  static GstElementDetails gst_gnome_vfs_src_details =
-      GST_ELEMENT_DETAILS ("GnomeVFS Source",
-      "Source/File",
-      "Read from any GnomeVFS-supported file",
-      "Bastien Nocera <hadess@hadess.net>\n"
-      "Ronald S. Bultje <rbultje@ronald.bitfreak.net>");
 
   gst_element_class_add_pad_template (element_class,
       gst_static_pad_template_get (&srctemplate));
index 43ca679d4dfe9bca73b8cdb42b6abbeff2e9a514..f881f9a900152ab5198871ae5f439abff04eaf90 100644 (file)
 #include <string.h>
 #include <gst/gst-i18n-plugin.h>
 
+static GstElementDetails gst_ogg_demux_details =
+GST_ELEMENT_DETAILS ("ogg demuxer",
+    "Codec/Demuxer",
+    "demux ogg streams (info about ogg: http://xiph.org)",
+    "Wim Taymand <wim@fluendo.com>");
+
 #define CHUNKSIZE (8500)        /* this is out of vorbisfile */
 #define SKELETON_FISHEAD_SIZE 64
 #define SKELETON_FISBONE_MIN_SIZE 52
@@ -1277,11 +1283,6 @@ static void
 gst_ogg_demux_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
-  static GstElementDetails gst_ogg_demux_details =
-      GST_ELEMENT_DETAILS ("ogg demuxer",
-      "Codec/Demuxer",
-      "demux ogg streams (info about ogg: http://xiph.org)",
-      "Wim Taymand <wim@fluendo.com>");
 
   gst_element_class_set_details (element_class, &gst_ogg_demux_details);
 
index abb4bb761991aef3ed7fc7e2313e500385bfede0..025defd4e3d38de2cce508fe4d34f5b569b24a86 100644 (file)
 #include <ogg/ogg.h>
 #include <string.h>
 
+static GstElementDetails gst_ogg_parse_details =
+GST_ELEMENT_DETAILS ("ogg parser",
+    "Codec/Parser",
+    "parse ogg streams into pages (info about ogg: http://xiph.org)",
+    "Michael Smith <msmith@fluendo.com>");
+
 GST_DEBUG_CATEGORY_STATIC (gst_ogg_parse_debug);
 #define GST_CAT_DEFAULT gst_ogg_parse_debug
 
@@ -211,11 +217,6 @@ static void
 gst_ogg_parse_base_init (gpointer g_class)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
-  static GstElementDetails gst_ogg_parse_details =
-      GST_ELEMENT_DETAILS ("ogg parser",
-      "Codec/Parser",
-      "parse ogg streams into pages (info about ogg: http://xiph.org)",
-      "Michael Smith <msmith@fluendo.com>");
 
   gst_element_class_set_details (element_class, &gst_ogg_parse_details);
 
index 8780015f153415ff2b0112154286a1a2d85bebad..b75a51f939f1f5306b4bcc7dd909cd477717908d 100644 (file)
@@ -55,6 +55,24 @@ GST_DEBUG_CATEGORY_STATIC (gst_ogm_parse_debug);
 #define GST_OGM_PARSE_GET_CLASS(obj) \
   (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_OGM_PARSE, GstOgmParseClass))
 
+static GstElementDetails gst_ogm_audio_parse_details =
+GST_ELEMENT_DETAILS ("OGM audio stream parser",
+    "Codec/Decoder/Audio",
+    "parse an OGM audio header and stream",
+    "Ronald Bultje <rbultje@ronald.bitfreak.net>");
+
+static GstElementDetails gst_ogm_video_parse_details =
+GST_ELEMENT_DETAILS ("OGM video stream parser",
+    "Codec/Decoder/Video",
+    "parse an OGM video header and stream",
+    "Ronald Bultje <rbultje@ronald.bitfreak.net>");
+
+static GstElementDetails gst_ogm_text_parse_details =
+GST_ELEMENT_DETAILS ("OGM text stream parser",
+    "Codec/Decoder/Subtitle",
+    "parse an OGM text header and stream",
+    "Ronald Bultje <rbultje@ronald.bitfreak.net>");
+
 typedef struct _stream_header_video
 {
   gint32 width;
@@ -260,11 +278,6 @@ static void
 gst_ogm_audio_parse_base_init (GstOgmParseClass * klass)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
-  static GstElementDetails gst_ogm_audio_parse_details =
-      GST_ELEMENT_DETAILS ("OGM audio stream parser",
-      "Codec/Decoder/Audio",
-      "parse an OGM audio header and stream",
-      "Ronald Bultje <rbultje@ronald.bitfreak.net>");
   GstCaps *caps = gst_riff_create_audio_template_caps ();
 
   gst_element_class_set_details (element_class, &gst_ogm_audio_parse_details);
@@ -280,11 +293,6 @@ static void
 gst_ogm_video_parse_base_init (GstOgmParseClass * klass)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
-  static GstElementDetails gst_ogm_video_parse_details =
-      GST_ELEMENT_DETAILS ("OGM video stream parser",
-      "Codec/Decoder/Video",
-      "parse an OGM video header and stream",
-      "Ronald Bultje <rbultje@ronald.bitfreak.net>");
   GstCaps *caps = gst_riff_create_video_template_caps ();
 
   gst_element_class_set_details (element_class, &gst_ogm_video_parse_details);
@@ -300,11 +308,6 @@ static void
 gst_ogm_text_parse_base_init (GstOgmParseClass * klass)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
-  static GstElementDetails gst_ogm_text_parse_details =
-      GST_ELEMENT_DETAILS ("OGM text stream parser",
-      "Codec/Decoder/Subtitle",
-      "parse an OGM text header and stream",
-      "Ronald Bultje <rbultje@ronald.bitfreak.net>");
   GstCaps *caps = gst_caps_new_simple ("text/plain", NULL, NULL);
 
   gst_element_class_set_details (element_class, &gst_ogm_text_parse_details);
index 65f811bb9a8c877fd26d8054313fe33af6595710..30912e845f732409746c9d96abf2a5e50cb1e9ca 100644 (file)
  * If you do not have such a subtitle file, create one looking like this
  * in a text editor:
  * <programlisting>
- * 1\r
- * 00:00:03,000 --> 00:00:05,000\r
- * Hello? (3-5s)\r
- * \r
- * 2\r
- * 00:00:08,000 --> 00:00:13,000\r
+ * 1
+ * 00:00:03,000 --> 00:00:05,000
+ * Hello? (3-5s)
+ * 
+ * 2
+ * 00:00:08,000 --> 00:00:13,000
  * Yes, this is a subtitle. Don&apos;t
- * you like it? (8-13s)\r
- * \r
- * 3\r
- * 00:00:18,826 --> 00:01:02,886\r
- * Uh? What are you talking about?\r
+ * you like it? (8-13s)
+ * 
+ * 3
+ * 00:00:18,826 --> 00:01:02,886
+ * Uh? What are you talking about?
  * I don&apos;t understand  (18-62s)
  * </programlisting>
  * </para>
 GST_DEBUG_CATEGORY (pango_debug);
 #define GST_CAT_DEFAULT pango_debug
 
-static GstElementDetails text_overlay_details = {
-  "Text Overlay",
-  "Filter/Editor/Video",
-  "Adds text strings on top of a video buffer",
-  "David Schleef <ds@schleef.org>"
-};
+static GstElementDetails text_overlay_details =
+GST_ELEMENT_DETAILS ("Text Overlay",
+    "Filter/Editor/Video",
+    "Adds text strings on top of a video buffer",
+    "David Schleef <ds@schleef.org>");
 
 
 #define DEFAULT_PROP_TEXT      ""
index e9a165be4b63cd3c94156b52b5608f64e4620df6..62740ba7349c2d389698dc752e051ff4445dc79f 100644 (file)
 GST_DEBUG_CATEGORY_EXTERN (pango_debug);
 #define GST_CAT_DEFAULT pango_debug
 
-static GstElementDetails text_render_details = {
-  "Text Render",
-  "Filter/Editor/Video",
-  "Renders a text string to an image bitmap",
-  "David Schleef <ds@schleef.org>, "
-      "Ronald S. Bultje <rbultje@ronald.bitfreak.net>"
-};
+static GstElementDetails text_render_details =
+GST_ELEMENT_DETAILS ("Text Render",
+    "Filter/Editor/Video",
+    "Renders a text string to an image bitmap",
+    "David Schleef <ds@schleef.org>, "
+    "Ronald S. Bultje <rbultje@ronald.bitfreak.net>");
 
 enum
 {
index 4a31aa6ca0d69b06f184011b4c0bcb4c0047611f..210d0d7a78fcd2563c1eccb34c823cacbcd19676 100644 (file)
@@ -58,13 +58,11 @@ enum
   ARG_CROP
 };
 
-static GstElementDetails theora_dec_details = {
-  "TheoraDec",
-  "Codec/Decoder/Video",
-  "decode raw theora streams to raw YUV video",
-  "Benjamin Otte <in7y118@public.uni-hamburg.de>, "
-      "Wim Taymans <wim@fluendo.com>",
-};
+static GstElementDetails theora_dec_details = GST_ELEMENT_DETAILS ("TheoraDec",
+    "Codec/Decoder/Video",
+    "decode raw theora streams to raw YUV video",
+    "Benjamin Otte <in7y118@public.uni-hamburg.de>, "
+    "Wim Taymans <wim@fluendo.com>");
 
 static GstStaticPadTemplate theora_dec_src_factory =
 GST_STATIC_PAD_TEMPLATE ("src",
index a54a02b658b6f429ad02edc808732524717fb512..d13c7d6751c07340f5770b5bbce6964c23a3ce75 100644 (file)
@@ -149,12 +149,10 @@ granulepos_to_timestamp (GstTheoraEnc * theoraenc, ogg_int64_t granulepos)
       theoraenc->info.fps_numerator);
 }
 
-static GstElementDetails theora_enc_details = {
-  "TheoraEnc",
-  "Codec/Encoder/Video",
-  "encode raw YUV video to a theora stream",
-  "Wim Taymans <wim@fluendo.com>",
-};
+static GstElementDetails theora_enc_details = GST_ELEMENT_DETAILS ("TheoraEnc",
+    "Codec/Encoder/Video",
+    "encode raw YUV video to a theora stream",
+    "Wim Taymans <wim@fluendo.com>");
 
 static GstStaticPadTemplate theora_enc_sink_factory =
 GST_STATIC_PAD_TEMPLATE ("sink",
index f644e8ec7f73d78b35eff627cbf2aeb8ab593533..500d7c692f80519bf28695ec77ae0709a9a3c76b 100644 (file)
 GST_DEBUG_CATEGORY_EXTERN (vorbisdec_debug);
 #define GST_CAT_DEFAULT vorbisdec_debug
 
-static GstElementDetails vorbis_dec_details = {
-  "VorbisDec",
-  "Codec/Decoder/Audio",
-  "decode raw vorbis streams to float audio",
-  "Benjamin Otte <in7y118@public.uni-hamburg.de>",
-};
+static GstElementDetails vorbis_dec_details = GST_ELEMENT_DETAILS ("VorbisDec",
+    "Codec/Decoder/Audio",
+    "decode raw vorbis streams to float audio",
+    "Benjamin Otte <in7y118@public.uni-hamburg.de>");
 
 /* Filter signals and args */
 enum
index a3cd1588c841ad0380d5a28036e84eabb8b021c9..57c1e0aacdbb522c3993dd6488e3d4f2a724f8a8 100644 (file)
@@ -66,12 +66,10 @@ GST_DEBUG_CATEGORY_EXTERN (vorbisenc_debug);
 static GstPadTemplate *gst_vorbisenc_src_template, *gst_vorbisenc_sink_template;
 
 /* elementfactory information */
-GstElementDetails vorbisenc_details = {
-  "Vorbis encoder",
-  "Codec/Encoder/Audio",
-  "Encodes audio in Vorbis format",
-  "Monty <monty@xiph.org>, " "Wim Taymans <wim@fluendo.com>",
-};
+GstElementDetails vorbisenc_details = GST_ELEMENT_DETAILS ("Vorbis encoder",
+    "Codec/Encoder/Audio",
+    "Encodes audio in Vorbis format",
+    "Monty <monty@xiph.org>, " "Wim Taymans <wim@fluendo.com>");
 
 /* GstVorbisEnc signals and args */
 enum
index 2964b4d4b34fdef154bb14d07a2bbee4103a74e2..750413bea7a2afc12280b7d9821236ea42b0bb06 100644 (file)
 
 #include <string.h>
 
+static GstElementDetails audio_filter_details =
+GST_ELEMENT_DETAILS ("Audio filter base class",
+    "Filter/Effect/Audio",
+    "Filters audio",
+    "David Schleef <ds@schleef.org>");
 
 /* GstAudioFilter signals and args */
 enum
@@ -83,12 +88,6 @@ gst_audio_filter_get_type (void)
 static void
 gst_audio_filter_base_init (gpointer g_class)
 {
-  static GstElementDetails audio_filter_details = {
-    "Audio filter base class",
-    "Filter/Effect/Audio",
-    "Filters audio",
-    "David Schleef <ds@schleef.org>"
-  };
   GstAudioFilterClass *klass = (GstAudioFilterClass *) g_class;
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
index 1eb1621a65a59c1ac49f963552248a8653721222..1c6352250202cfd4c027e55ed1b927b3a6b2445e 100644 (file)
 #include <gst/audio/gstaudiofilter.h>
 #include <string.h>
 
+static GstElementDetails audio_filter_template_details =
+GST_ELEMENT_DETAILS ("Audio filter template",
+    "Filter/Effect/Audio",
+    "Filters audio",
+    "David Schleef <ds@schleef.org>");
+
 typedef struct _GstAudioFilterTemplate GstAudioFilterTemplate;
 typedef struct _GstAudioFilterTemplateClass GstAudioFilterTemplateClass;
 
@@ -117,12 +123,6 @@ gst_audio_filter_template_get_type (void)
 static void
 gst_audio_filter_template_base_init (gpointer g_class)
 {
-  static GstElementDetails audio_filter_template_details = {
-    "Audio filter template",
-    "Filter/Effect/Audio",
-    "Filters audio",
-    "David Schleef <ds@schleef.org>"
-  };
   GstAudioFilterTemplateClass *klass = (GstAudioFilterTemplateClass *) g_class;
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
 
index 026a3f49945032b60b42713a984f35a36c6c51e5..5ac28d85606ed1941231fcd12592ebd5cae1c0f4 100644 (file)
  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  * Boston, MA 02111-1307, USA.
  */
+/**
+ * SECTION:element-adder
+ *
+ * <refsect2>
+ * The Adder allows to mix several streams into one by adding the data.
+ * Mixed data is clamped to the min/max values of the data format.
+ * <title>Example launch line</title>
+ * <para>
+ * <programlisting>
+ * gst-launch audiotestsrc freq=100 ! adder name=mix ! audioconvert ! alsasink audiotestsrc freq=500 ! mix.
+ * </programlisting>
+ * This pipeline produces two sine waves mixed together.
+ * </para>
+ * </refsect2>
+ */
 /* Element-Checklist-Version: 5 */
 
 #ifdef HAVE_CONFIG_H
@@ -90,7 +105,7 @@ gst_adder_get_type (void)
 {
   static GType adder_type = 0;
 
-  if (!adder_type) {
+  if (G_UNLIKELY (adder_type == 0)) {
     static const GTypeInfo adder_info = {
       sizeof (GstAdderClass), NULL, NULL,
       (GClassInitFunc) gst_adder_class_init, NULL, NULL,
index 8d06fc13fffc516365290a45a1bbaf46dc94b65e..81b6af9621aa5d49834f0f3ba71a225c1ee6052e 100644 (file)
@@ -28,8 +28,6 @@
 
 G_BEGIN_DECLS
 
-extern GstElementDetails gst_adder_details;
-
 #define GST_TYPE_ADDER \
   (gst_adder_get_type())
 #define GST_ADDER(obj) \
index 04d1bb8b355d9e4ac197bef4ea82a2b0b8952e8e..5beb63dfb22126baa335d9e6d695b711f1770cb2 100644 (file)
@@ -74,12 +74,11 @@ GST_DEBUG_CATEGORY (audio_convert_debug);
 
 /*** DEFINITIONS **************************************************************/
 
-static GstElementDetails audio_convert_details = {
-  "Audio Conversion",
-  "Filter/Converter/Audio",
-  "Convert audio to different formats",
-  "Benjamin Otte <in7y118@public.uni-hamburg.de>",
-};
+static GstElementDetails audio_convert_details =
+GST_ELEMENT_DETAILS ("Audio Conversion",
+    "Filter/Converter/Audio",
+    "Convert audio to different formats",
+    "Benjamin Otte <in7y118@public.uni-hamburg.de>");
 
 /* type functions */
 static void gst_audio_convert_dispose (GObject * obj);
index 77463fb27b4c6ba02b08f97b8ecd7c7b85c950c5..fc3f6448b622871bb254d9ca9280ebb9a205dd4e 100644 (file)
 
 #define M_PI_M2 ( M_PI + M_PI )
 
-GstElementDetails gst_audio_test_src_details = {
-  "Audio test source",
-  "Source/Audio",
-  "Creates audio test signals of given frequency and volume",
-  "Stefan Kost <ensonic@users.sf.net>"
-};
+static GstElementDetails gst_audio_test_src_details =
+GST_ELEMENT_DETAILS ("Audio test source",
+    "Source/Audio",
+    "Creates audio test signals of given frequency and volume",
+    "Stefan Kost <ensonic@users.sf.net>");
 
 
 enum
@@ -116,7 +115,7 @@ gst_audiostestsrc_wave_get_type (void)
     {0, NULL, NULL},
   };
 
-  if (!audiostestsrc_wave_type) {
+  if (G_UNLIKELY (audiostestsrc_wave_type == 0)) {
     audiostestsrc_wave_type = g_enum_register_static ("GstAudioTestSrcWave",
         audiostestsrc_waves);
   }
@@ -140,8 +139,10 @@ static gboolean gst_audio_test_src_query (GstBaseSrc * basesrc,
 
 static void gst_audio_test_src_change_wave (GstAudioTestSrc * src);
 
+/*
 static void gst_audio_test_src_get_times (GstBaseSrc * basesrc,
     GstBuffer * buffer, GstClockTime * start, GstClockTime * end);
+*/
 static GstFlowReturn gst_audio_test_src_create (GstBaseSrc * basesrc,
     guint64 offset, guint length, GstBuffer ** buffer);
 
@@ -195,8 +196,10 @@ gst_audio_test_src_class_init (GstAudioTestSrcClass * klass)
       GST_DEBUG_FUNCPTR (gst_audio_test_src_is_seekable);
   gstbasesrc_class->do_seek = GST_DEBUG_FUNCPTR (gst_audio_test_src_do_seek);
   gstbasesrc_class->query = GST_DEBUG_FUNCPTR (gst_audio_test_src_query);
-  gstbasesrc_class->get_times =
-      GST_DEBUG_FUNCPTR (gst_audio_test_src_get_times);
+  /*
+     gstbasesrc_class->get_times =
+     GST_DEBUG_FUNCPTR (gst_audio_test_src_get_times);
+   */
   gstbasesrc_class->create = GST_DEBUG_FUNCPTR (gst_audio_test_src_create);
 }
 
@@ -576,6 +579,7 @@ gst_audio_test_src_change_volume (GstAudioTestSrc * src)
   }
 }
 
+#ifdef __DISABLE_NO_LIVE__
 static void
 gst_audio_test_src_get_times (GstBaseSrc * basesrc, GstBuffer * buffer,
     GstClockTime * start, GstClockTime * end)
@@ -598,6 +602,7 @@ gst_audio_test_src_get_times (GstBaseSrc * basesrc, GstBuffer * buffer,
     *end = -1;
   }
 }
+#endif
 
 static gboolean
 gst_audio_test_src_do_seek (GstBaseSrc * basesrc, GstSegment * segment)
@@ -636,6 +641,7 @@ static GstFlowReturn
 gst_audio_test_src_create (GstBaseSrc * basesrc, guint64 offset,
     guint length, GstBuffer ** buffer)
 {
+  GstFlowReturn res;
   GstAudioTestSrc *src;
   GstBuffer *buf;
   GstClockTime next_time;
@@ -646,6 +652,7 @@ gst_audio_test_src_create (GstBaseSrc * basesrc, guint64 offset,
   if (src->eos_reached)
     return GST_FLOW_UNEXPECTED;
 
+  /* example for tagging generated data */
   if (!src->tags_pushed) {
     GstTagList *taglist;
     GstEvent *event;
@@ -660,6 +667,7 @@ gst_audio_test_src_create (GstBaseSrc * basesrc, guint64 offset,
     src->tags_pushed = TRUE;
   }
 
+  /* check for eos */
   if (src->check_seek_stop &&
       (src->n_samples_stop > src->n_samples) &&
       (src->n_samples_stop < src->n_samples + src->samples_per_buffer)
@@ -673,15 +681,17 @@ gst_audio_test_src_create (GstBaseSrc * basesrc, guint64 offset,
     src->generate_samples_per_buffer = src->samples_per_buffer;
     n_samples = src->n_samples + src->samples_per_buffer;
   }
-  next_time = n_samples * GST_SECOND / src->samplerate;
-
-  buf =
-      gst_buffer_new_and_alloc (src->generate_samples_per_buffer *
-      sizeof (gint16));
-  gst_buffer_set_caps (buf, GST_PAD_CAPS (basesrc->srcpad));
+  next_time = gst_util_uint64_scale (n_samples, GST_SECOND,
+      (guint64) src->samplerate);
+
+  /* allocate a new buffer suitable for this pad */
+  if ((res = gst_pad_alloc_buffer (basesrc->srcpad, src->n_samples,
+              src->generate_samples_per_buffer * sizeof (gint16),
+              GST_PAD_CAPS (basesrc->srcpad), &buf)) != GST_FLOW_OK) {
+    return res;
+  }
 
   GST_BUFFER_TIMESTAMP (buf) = src->timestamp_offset + src->running_time;
-  GST_BUFFER_OFFSET (buf) = src->n_samples;
   GST_BUFFER_OFFSET_END (buf) = n_samples;
   GST_BUFFER_DURATION (buf) = next_time - src->running_time;
 
index 7fcc798fd0cddb8978379de9a6efc330d29a9113..13f5642a41140280888afb64be79e57a0faf0c03 100644 (file)
@@ -43,12 +43,11 @@ GST_DEBUG_CATEGORY (ffmpegcolorspace_debug);
 #define GST_CAT_DEFAULT ffmpegcolorspace_debug
 
 /* elementfactory information */
-static GstElementDetails ffmpegcsp_details = {
-  "FFMPEG Colorspace converter",
-  "Filter/Converter/Video",
-  "Converts video from one colorspace to another",
-  "Ronald Bultje <rbultje@ronald.bitfreak.net>",
-};
+static GstElementDetails ffmpegcsp_details =
+GST_ELEMENT_DETAILS ("FFMPEG Colorspace converter",
+    "Filter/Converter/Video",
+    "Converts video from one colorspace to another",
+    "Ronald Bultje <rbultje@ronald.bitfreak.net>");
 
 
 /* Stereo signals and args */
index b1347628d78547ac6afb9dcae14a56166c3ff57b..c86b98aec94dfd2d260c9ba79e3c2e6d96adf00e 100644 (file)
@@ -142,12 +142,11 @@ static void queue_filled_cb (GstElement * queue, GstDecodeBin * decode_bin);
 static GstElementClass *parent_class;
 static guint gst_decode_bin_signals[LAST_SIGNAL] = { 0 };
 
-static GstElementDetails gst_decode_bin_details = {
-  "Decoder Bin",
-  "Generic/Bin/Decoder",
-  "Autoplug and decode to raw media",
-  "Wim Taymans <wim@fluendo.com>"
-};
+static GstElementDetails gst_decode_bin_details =
+GST_ELEMENT_DETAILS ("Decoder Bin",
+    "Generic/Bin/Decoder",
+    "Autoplug and decode to raw media",
+    "Wim Taymans <wim@fluendo.com>");
 
 
 static GType
index 53f8af03a9a15ebb2b3bae31a69b043195aa38bc..fea9811dfe297f10d668bb2398ea4fc3e9705c74 100644 (file)
@@ -128,12 +128,11 @@ static GstElementClass *parent_class;
 
 //static guint gst_play_bin_signals[LAST_SIGNAL] = { 0 };
 
-static GstElementDetails gst_play_bin_details = {
-  "Player Bin",
-  "Generic/Bin/Player",
-  "Autoplug and play media from an uri",
-  "Wim Taymans <wim@fluendo.com>"
-};
+static GstElementDetails gst_play_bin_details =
+GST_ELEMENT_DETAILS ("Player Bin",
+    "Generic/Bin/Player",
+    "Autoplug and play media from an uri",
+    "Wim Taymans <wim@fluendo.com>");
 
 static GType
 gst_play_bin_get_type (void)
index 3923e6d0d958604dc8fb0fd995502d74e71215fa..939722636aac7e8115205939b18682e269ee06ea 100644 (file)
 GST_DEBUG_CATEGORY_STATIC (stream_selector_debug);
 #define GST_CAT_DEFAULT stream_selector_debug
 
+static GstElementDetails gst_stream_selector_details =
+GST_ELEMENT_DETAILS ("StreamSelector",
+    "Generic",
+    "N-to-1 input stream_selectoring",
+    "Julien Moutte <julien@moutte.net>\n"
+    "Ronald S. Bultje <rbultje@ronald.bitfreak.net>\n"
+    "Jan Schmidt <thaytan@mad.scientist.com>");
+
 static GstStaticPadTemplate gst_stream_selector_sink_factory =
 GST_STATIC_PAD_TEMPLATE ("sink%d",
     GST_PAD_SINK,
@@ -106,13 +114,6 @@ static void
 gst_stream_selector_base_init (GstStreamSelectorClass * klass)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
-  static GstElementDetails gst_stream_selector_details =
-      GST_ELEMENT_DETAILS ("StreamSelector",
-      "Generic",
-      "N-to-1 input stream_selectoring",
-      "Julien Moutte <julien@moutte.net>\n"
-      "Ronald S. Bultje <rbultje@ronald.bitfreak.net>\n"
-      "Jan Schmidt <thaytan@mad.scientist.com>");
 
   gst_element_class_set_details (element_class, &gst_stream_selector_details);
 
index df66006f00e81dbff58373281ae5e40e7c7f07dd..9dd1acc50471275d100830f7c3aeb3b9abf057cd 100644 (file)
 GST_DEBUG_CATEGORY_STATIC (sub_parse_debug);
 #define GST_CAT_DEFAULT sub_parse_debug
 
+static GstElementDetails sub_parse_details =
+GST_ELEMENT_DETAILS ("Subtitle parsers",
+    "Codec/Parser/Subtitle",
+    "Parses subtitle (.sub) files into text streams",
+    "Gustavo J. A. M. Carneiro <gjc@inescporto.pt>\n"
+    "Ronald S. Bultje <rbultje@ronald.bitfreak.net>");
+
 static GstStaticPadTemplate sink_templ = GST_STATIC_PAD_TEMPLATE ("sink",
     GST_PAD_SINK,
     GST_PAD_ALWAYS,
@@ -88,13 +95,6 @@ static void
 gst_sub_parse_base_init (GstSubParseClass * klass)
 {
   GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
-  static GstElementDetails sub_parse_details = {
-    "Subtitle parsers",
-    "Codec/Parser/Subtitle",
-    "Parses subtitle (.sub) files into text streams",
-    "Gustavo J. A. M. Carneiro <gjc@inescporto.pt>\n"
-        "Ronald S. Bultje <rbultje@ronald.bitfreak.net>"
-  };
 
   gst_element_class_add_pad_template (element_class,
       gst_static_pad_template_get (&sink_templ));
index fdaaa38ddb023feff41445ccfac811ebfaa48748..5beb4a4a9a2b0bc6113073c89d47a4f205d60927 100644 (file)
 /* number of steps we use for the mixer interface to go from 0.0 to 1.0 */
 # define VOLUME_STEPS           100
 
-static GstElementDetails volume_details = {
-  "Volume",
-  "Filter/Effect/Audio",
-  "Set volume on audio/raw streams",
-  "Andy Wingo <wingo@pobox.com>",
-};
+static GstElementDetails volume_details = GST_ELEMENT_DETAILS ("Volume",
+    "Filter/Effect/Audio",
+    "Set volume on audio/raw streams",
+    "Andy Wingo <wingo@pobox.com>");
 
 /* Filter signals and args */
 enum
index 6e4923463b68c28332e38ceeaeecd1c550cc1377..38e33a4f3b8e519ad605c440a672c9877908b16c 100644 (file)
@@ -31,12 +31,11 @@ GST_DEBUG_CATEGORY (v4lmjpegsink_debug);
 #define GST_CAT_DEFAULT v4lmjpegsink_debug
 
 /* elementfactory information */
-static GstElementDetails gst_v4lmjpegsink_details = {
-  "Video (video4linux/MJPEG) sink",
-  "Sink/Video",
-  "Writes MJPEG-encoded frames to a zoran MJPEG/video4linux device",
-  "Ronald Bultje <rbultje@ronald.bitfreak.net>"
-};
+static GstElementDetails gst_v4lmjpegsink_details =
+GST_ELEMENT_DETAILS ("Video (video4linux/MJPEG) sink",
+    "Sink/Video",
+    "Writes MJPEG-encoded frames to a zoran MJPEG/video4linux device",
+    "Ronald Bultje <rbultje@ronald.bitfreak.net>");
 
 /* v4lmjpegsink signals and args */
 enum
index 288be3d2d8a3c9e96d42ae34c3cbbc2f78fb1b1b..661f30bfd1053840857a871a0c8b264df7f90214 100644 (file)
@@ -31,12 +31,11 @@ GST_DEBUG_CATEGORY (v4lmjpegsrc_debug);
 #define GST_CAT_DEFAULT v4lmjpegsrc_debug
 
 /* elementfactory information */
-static GstElementDetails gst_v4lmjpegsrc_details = {
-  "Video (video4linux/MJPEG) Source",
-  "Source/Video",
-  "Reads MJPEG-encoded frames from a zoran MJPEG/video4linux device",
-  "Ronald Bultje <rbultje@ronald.bitfreak.net>"
-};
+static GstElementDetails gst_v4lmjpegsrc_details =
+GST_ELEMENT_DETAILS ("Video (video4linux/MJPEG) Source",
+    "Source/Video",
+    "Reads MJPEG-encoded frames from a zoran MJPEG/video4linux device",
+    "Ronald Bultje <rbultje@ronald.bitfreak.net>");
 
 /* V4lMjpegSrc signals and args */
 enum
index e5c4bb196e3aafa53ac0b746bcb200db4eada958..8dde561811a7d56a7373492ec65f49783470fce9 100644 (file)
@@ -2,7 +2,7 @@
  *
  * unit test for cddabasesrc
  *
- * Copyright (C) <2005> Tim-Philipp Müller  <tim centricular net>
+ * Copyright (C) <2005> Tim-Philipp M??ller  <tim centricular net>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -184,12 +184,11 @@ static gboolean gst_cd_foo_src_open (GstCddaBaseSrc * src,
     const gchar * device);
 static void gst_cd_foo_src_close (GstCddaBaseSrc * src);
 
-static GstElementDetails cdfoo_details = {
-  "CD Audio (cdda) Source, FooBar",
-  "Source/File",
-  "Read audio from CD",
-  "Foo Bar <foo@bar.com>"
-};
+static GstElementDetails cdfoo_details =
+GST_ELEMENT_DETAILS ("CD Audio (cdda) Source, FooBar",
+    "Source/File",
+    "Read audio from CD",
+    "Foo Bar <foo@bar.com>");
 
 static void
 gst_cd_foo_src_base_init (gpointer g_class)
index 9c34cb55fa00c2cc3f916862dc17db69e231e327..2c58f06fdccfea49f9ebb420e6877bd7a0628b8b 100644 (file)
@@ -11,14 +11,12 @@ class Gst:Identity2 from Gst:Element {
   private gboolean
   plugin_init (GModule *module, GstPlugin *plugin)
   {
-    static GstElementDetails identity2_details = {
+    static GstElementDetails identity2_details =
+    GST_ELEMENT_DETAILS (
       "GOB Identity",
       "Filter/Effect",
       "Does nothing",
-      "1.0",
-      "Wim Taymans <wim.taymans@chello.be>",
-      "(C) 2001",
-    };
+      "Wim Taymans <wim.taymans@chello.be>");
     GstElementFactory *factory;
 
     factory = gst_elementfactory_new ("identity2", TYPE_SELF,