remove old plugins docs
authorThomas Vander Stichele <thomas@apestaart.org>
Sat, 3 Sep 2005 13:54:26 +0000 (13:54 +0000)
committerThomas Vander Stichele <thomas@apestaart.org>
Sat, 3 Sep 2005 13:54:26 +0000 (13:54 +0000)
Original commit message from CVS:
remove old plugins docs

57 files changed:
docs/plugins/.gitignore [deleted file]
docs/plugins/Makefile.am [deleted file]
docs/plugins/gstdoc-mkdb [deleted file]
docs/plugins/gstdoc-mktmpl [deleted file]
docs/plugins/gstdoc-scanobj [deleted file]
docs/plugins/gstreamer-plugins-docs.sgml [deleted file]
docs/plugins/gstreamer-plugins-sections.txt [deleted file]
docs/plugins/gstreamer-plugins.types.in [deleted file]
docs/plugins/tmpl/ac3dec.sgml [deleted file]
docs/plugins/tmpl/ac3parse.sgml [deleted file]
docs/plugins/tmpl/audioscale.sgml [deleted file]
docs/plugins/tmpl/cobin.sgml [deleted file]
docs/plugins/tmpl/dvdsrc.sgml [deleted file]
docs/plugins/tmpl/example.sgml [deleted file]
docs/plugins/tmpl/gstaviencoder.sgml [deleted file]
docs/plugins/tmpl/gstjpeg.sgml [deleted file]
docs/plugins/tmpl/gstjpegdec.sgml [deleted file]
docs/plugins/tmpl/gstjpegenc.sgml [deleted file]
docs/plugins/tmpl/gstmpeg1encoder.sgml [deleted file]
docs/plugins/tmpl/gstmpeg2enc.sgml [deleted file]
docs/plugins/tmpl/gstmpeg2play.sgml [deleted file]
docs/plugins/tmpl/gstmpeg_play.sgml [deleted file]
docs/plugins/tmpl/gstmpegaudio.sgml [deleted file]
docs/plugins/tmpl/gstmpg123.sgml [deleted file]
docs/plugins/tmpl/gstparseau.sgml [deleted file]
docs/plugins/tmpl/gstparseavi.sgml [deleted file]
docs/plugins/tmpl/gstparsewav.sgml [deleted file]
docs/plugins/tmpl/gstreamer-plugins-unused.sgml [deleted file]
docs/plugins/tmpl/gstspectrum.sgml [deleted file]
docs/plugins/tmpl/gstv4lsrc.sgml [deleted file]
docs/plugins/tmpl/gstwincodec.sgml [deleted file]
docs/plugins/tmpl/gstwindec.sgml [deleted file]
docs/plugins/tmpl/gstwinenc.sgml [deleted file]
docs/plugins/tmpl/gstxa.sgml [deleted file]
docs/plugins/tmpl/gstxing.sgml [deleted file]
docs/plugins/tmpl/median.sgml [deleted file]
docs/plugins/tmpl/mp1videoparse.sgml [deleted file]
docs/plugins/tmpl/mp2videoparse.sgml [deleted file]
docs/plugins/tmpl/mp3parse.sgml [deleted file]
docs/plugins/tmpl/mpeg1parse.sgml [deleted file]
docs/plugins/tmpl/mpeg2parse.sgml [deleted file]
docs/plugins/tmpl/mpeg2subt.sgml [deleted file]
docs/plugins/tmpl/rtjpegdec.sgml [deleted file]
docs/plugins/tmpl/rtjpegenc.sgml [deleted file]
docs/plugins/tmpl/smooth.sgml [deleted file]
docs/plugins/tmpl/smoothwave.sgml [deleted file]
docs/plugins/tmpl/spindentity.sgml [deleted file]
docs/plugins/tmpl/stereo.sgml [deleted file]
docs/plugins/tmpl/synaesthesia.sgml [deleted file]
docs/plugins/tmpl/system_encode.sgml [deleted file]
docs/plugins/tmpl/vcdsrc.sgml [deleted file]
docs/plugins/tmpl/videoscale.sgml [deleted file]
docs/plugins/tmpl/videosink.sgml [deleted file]
docs/plugins/tmpl/volume.sgml [deleted file]
docs/plugins/tmpl/vorbisdec.sgml [deleted file]
docs/plugins/tmpl/vorbisenc.sgml [deleted file]
docs/plugins/tmpl/vumeter.sgml [deleted file]

diff --git a/docs/plugins/.gitignore b/docs/plugins/.gitignore
deleted file mode 100644 (file)
index 8d8e45e..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-Makefile
-Makefile.in
-html
-sgml
-gstreamer-plugins.signals
-gstreamer-plugins.types
-gstreamer-plugins.hierarchy
-gstreamer-plugins.pads
-gstreamer-plugins.html
-gstreamer-plugins-unused.txt
-gstreamer-plugins-decl-list.txt
-gstreamer-plugins.args
-
diff --git a/docs/plugins/Makefile.am b/docs/plugins/Makefile.am
deleted file mode 100644 (file)
index 2f8d1d6..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-# The name of the module.
-DOC_MODULE=gstreamer-plugins
-
-# The top-level SGML file.
-DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml
-
-# The directory containing the source code (if it contains documentation).
-DOC_SOURCE_DIR=$(top_srcdir)/plugins
-
-#CFLAGS = `gstreamer-config --cflags` -Wall -g
-#LDFLAGS = `gstreamer-config --libs` 
-
-EXTRA_DIST=$(DOC_MODULE).types.in $(DOC_MODULE)-sections.txt $(DOC_MAIN_SGML_FILE) gstdoc-mkdb gstdoc-mktmpl gstdoc-scanobj
-
-TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
-
-tmpl_sources =                         \
-       tmpl/videoraw.sgml
-
-gstreamer_docdir = $(HTML_DIR)
-gstreamer_doc_DATA =           \
-       $(DOC_MODULE).html              \
-       $(DOC_MODULE).hierarchy \
-       $(DOC_MODULE).types             \
-       $(DOC_MODULE)-sections.txt
-
-SCANOBJS_FILES =               \
-       $(DOC_MODULE).signals   \
-       $(DOC_MODULE).hierarchy \
-       $(DOC_MODULE).args
-
-if HAVE_GTK_DOC
-$(DOC_MODULE).html: html/book1.html
-       -cd $(srcdir) && cp html/book1.html $(DOC_MODULE).html
-else
-$(DOC_MODULE).html:
-endif
-
-html/book1.html: sgml/$(DOC_MODULE)-doc.bottom
-       $(MAKE) html
-
-sgml/$(DOC_MODULE)-doc.bottom: $(tmpl_sources)
-       $(MAKE) sgml
-
-scanobj:
-       env CC="$(LIBTOOL) $(CC)" CFLAGS="$(LIBGST_CFLAGS) $(GLIB_CFLAGS) $(XML_CFLAGS) -I../../" LDFLAGS="$(GST_LIBS)"\
-       ./gstdoc-scanobj --module=$(DOC_MODULE)
-
-tmpl: scanobj 
-       ./gstdoc-mktmpl --module=$(DOC_MODULE)
-
-sgml: tmpl
-       ./gstdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR)
-
-html:
-       if ! test -d html ; then mkdir html ; fi
-       -cd html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
-
-clean-local:
-       rm -f *~ *.bak *.signals *-unused.txt *.args
-
-maintainer-clean-local: clean
-       rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt 
-
-install-data-local:
-       $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
-       (installfiles=`echo $(srcdir)/html/*.html`; \
-       if test "$$installfiles" = '$(srcdir)/html/*.html'; \
-       then echo '-- Nothing to install' ; \
-       else \
-         for i in $$installfiles; do \
-           echo '-- Installing '$$i ; \
-           $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
-         done; \
-         echo '-- Installing $(srcdir)/html/index.sgml' ; \
-         $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
-         echo '-- Fixing Crossreferences' ; \
-         gtkdoc-fixxref --module=$(DOC_MODULE) --html-dir=$(HTML_DIR)|| true; \
-       fi)
-
-dist-hook:
-       if ! test -d $(distdir)/tmpl ; then mkdir $(distdir)/tmpl ; fi
-       -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
-
-.PHONY : html sgml templates 
diff --git a/docs/plugins/gstdoc-mkdb b/docs/plugins/gstdoc-mkdb
deleted file mode 100755 (executable)
index b8e4dcd..0000000
+++ /dev/null
@@ -1,2273 +0,0 @@
-#!/usr/bin/perl -w
-#
-# gtk-doc - GTK DocBook documentation generator.
-# Copyright (C) 1998  Damon Chaplin
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program 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 General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-
-#############################################################################
-# Script      : gtkdoc-mkdb
-# Description : This creates the DocBook files from the edited templates.
-#
-#              NOTE: When creating SGML IDS, we append -CAPS to all
-#               all-caps identifiers to prevent name clashes. (It basically
-#               never is the case that mixed-case identifiers would collide.)
-#              See the CreateValidSGMLID function.
-#############################################################################
-
-use strict;
-use Getopt::Long;
-
-# Options
-
-# name of documentation module
-my $MODULE;
-my $TMPL_DIR;
-my $SGML_OUTPUT_DIR;
-my @SOURCE_DIRS;
-
-my %optctl = (module => \$MODULE,
-             'source-dir' => \@SOURCE_DIRS,
-             'output-dir' => \$SGML_OUTPUT_DIR,
-             'tmpl-dir' => \$TMPL_DIR);
-GetOptions(\%optctl, "module=s", "source-dir:s", "output-dir:s");
-
-my $ROOT_DIR = ".";
-
-# All the files are written in subdirectories beneath here.
-$TMPL_DIR = $TMPL_DIR ? $TMPL_DIR : "$ROOT_DIR/tmpl";
-
-# This is where we put all the DocBook output.
-$SGML_OUTPUT_DIR = $SGML_OUTPUT_DIR ? $SGML_OUTPUT_DIR : "$ROOT_DIR/sgml";
-
-# This file contains the object hierarchy.
-my $OBJECT_TREE_FILE = "$ROOT_DIR/$MODULE.hierarchy";
-
-# This file contains signal arguments and names.
-my $SIGNALS_FILE = "$ROOT_DIR/$MODULE.signals";
-
-# The file containing Arg information.
-my $ARGS_FILE = "$ROOT_DIR/$MODULE.args";
-
-# These global arrays store information on signals. Each signal has an entry
-# in each of these arrays at the same index, like a multi-dimensional array.
-my @SignalObjects;     # The GtkObject which emits the signal.
-my @SignalNames;       # The signal name.
-my @SignalReturns;     # The return type.
-my @SignalPrototypes;  # The rest of the prototype of the signal handler.
-
-# These global arrays store information on Args. Each Arg has an entry
-# in each of these arrays at the same index, like a multi-dimensional array.
-my @ArgObjects;                # The GtkObject which has the Arg.
-my @ArgNames;          # The Arg name.
-my @ArgTypes;          # The Arg type - gint, GtkArrowType etc.
-my @ArgFlags;          # How the Arg can be used - readable/writable etc.
-
-# These global hashes store declaration info keyed on a symbol name.
-my %Declarations;
-my %DeclarationTypes;
-my %DeclarationConditional;
-my %DeclarationOutput;
-
-# These global hashes store the existing documentation.
-my %SymbolDocs;
-my %SymbolTypes;
-my %SymbolParams;
-
-# These global hashes store documentation scanned from the source files.
-my %SourceSymbolDocs;
-my %SourceSymbolParams;
-
-# These global arrays store GtkObject and subclasses and the hierarchy.
-my @Objects;
-my @ObjectLevels;
-
-
-# Create the root DocBook output directory if it doens't exist.
-if (! -e $SGML_OUTPUT_DIR) {
-    mkdir ("$SGML_OUTPUT_DIR", 0777)
-       || die "Can't create directory: $SGML_OUTPUT_DIR";
-}
-
-# Function and other declaration output settings.
-my $RETURN_TYPE_FIELD_WIDTH = 12;
-my $SYMBOL_FIELD_WIDTH = 32;
-my $SIGNAL_FIELD_WIDTH = 12;
-
-&ReadSignalsFile ($SIGNALS_FILE);
-&ReadArgsFile ($ARGS_FILE);
-&ReadObjectHierarchy;
-
-# FIXME: this is the header file output at the top of the Synopsis.
-# We should allow this to be changed in the MODULE-sections.txt file.
-# gnome.h includes gtk/gtk.h which includes gdk/gdk.h which includes glib.h
-# so what should we output? - alternatives?
-my $HEADER_FILE = "";
-if ($MODULE eq 'glib') {
-    $HEADER_FILE = "glib.h";
-} elsif ($MODULE eq 'gdk') {
-    $HEADER_FILE = "gtk/gdk.h";
-} elsif ($MODULE eq 'gtk') {
-    $HEADER_FILE = "gtk/gtk.h";
-} elsif ($MODULE eq 'gnome' || $MODULE eq 'gnomeui') {
-    $HEADER_FILE = "gnome.h";
-}
-
-for my $dir (@SOURCE_DIRS) {
-    &ReadSourceDocumentation ($dir);
-}
-
-&OutputSGML ("$ROOT_DIR/$MODULE-sections.txt");
-
-
-#############################################################################
-# Function    : OutputObjectList
-# Description : This outputs the alphabetical list of objects, in a columned
-#              table. FIXME: Currently this also outputs ancestor objects
-#              which may not actually be in this module. 
-# Arguments   : none
-#############################################################################
-
-sub OutputObjectList {
-    my $cols = 3;
-
-    open (OUTPUT, ">$SGML_OUTPUT_DIR/object_index.sgml")
-       || die "Can't create $SGML_OUTPUT_DIR/object_index.sgml";
-    print (OUTPUT <<EOF);
-<informaltable pgwide=1 frame="none">
-<tgroup cols="$cols">
-<colspec colwidth="1*">
-<colspec colwidth="1*">
-<colspec colwidth="1*">
-<tbody>
-EOF
-
-    my $count = 0;
-    my $object;
-    foreach $object (sort(@Objects)) {
-       my $xref = &MakeXRef ($object);
-       if ($count % $cols == 0) { print (OUTPUT "<row>\n"); }
-       print (OUTPUT "<entry>$xref</entry>\n");
-       if ($count % $cols == ($cols - 1)) { print (OUTPUT "</row>\n"); }
-       $count++;
-    }
-
-    print (OUTPUT <<EOF);
-</tbody></tgroup></informaltable>
-EOF
-    close (OUTPUT);
-}
-
-
-#############################################################################
-# Function    : OutputSGML
-# Description : This collects the output for each section of the docs, and
-#              outputs each file when the end of the section is found.
-# Arguments   : $file - the $MODULE-sections.txt file which contains all of
-#              the functions/macros/structs etc. being documented, organised
-#              into sections and subsections.
-#############################################################################
-
-sub OutputSGML {
-    my ($file) = @_;
-    
-    open (INPUT, $file)
-       || die "Can't open $file";
-    my $book_top = "";
-    my $book_bottom = "";
-    my $includes = "";
-    my $section_includes = "";
-    my $in_section = 0;
-    my $title = "";
-    my $subsection = "";
-    my $synopsis;
-    my $details;
-    my $num_symbols;
-    while (<INPUT>) {
-       if (m/^#/) {
-           next;
-
-       } elsif (m/^<SECTION>/) {
-           $synopsis = "";
-           $details = "";
-           $num_symbols = 0;
-           $in_section = 1;
-
-       } elsif (m/^<SUBSECTION\s*(.*)>/i) {
-           $synopsis .= "\n";
-           $subsection = $1;
-
-       } elsif (m/^<SUBSECTION>/) {
-
-       } elsif (m/^<TITLE>(.*)<\/TITLE>/) {
-           $title = $1;
-#          print "Section: $title\n";
-
-           # We don't want warnings if object & class structs aren't used.
-           $DeclarationOutput{$title} = 1;
-           $DeclarationOutput{"${title}Class"} = 1;
-
-       } elsif (m/^<FILE>(.*)<\/FILE>/) {
-           $file = $1;
-           %SymbolDocs = ();
-           %SymbolTypes = ();
-           %SymbolParams = ();
-           &ReadTemplateFile ("$TMPL_DIR/$file.sgml", 1);
-           &MergeSourceDocumentation;
-
-       } elsif (m/^<INCLUDE>(.*)<\/INCLUDE>/) {
-           if ($in_section) {
-               $section_includes = $1;
-           } else {
-               $includes = $1;
-           }
-
-       } elsif (m/^<\/SECTION>/) {
-           if ($title eq "") {
-               $title = $file;
-           }
-#          print "End of section: $title\n";
-
-           $file =~ s/\s/_/g;
-           $file .= ".sgml";
-
-           # GtkObjects use their class name as the ID.
-           my $section_id;
-           if (&CheckIsObject ($title)) {
-               $section_id = &CreateValidSGMLID ($title);
-           } else {
-               $section_id = &CreateValidSGMLID ("$MODULE-$title");
-           }
-
-           if ($num_symbols > 0) {
-               $book_top .= "<!entity $section_id SYSTEM \"sgml/$file\">\n";
-               $book_bottom .= "    &$section_id;\n";
-
-               if ($section_includes eq "") {
-                   $section_includes = $includes;
-               }
-
-               &OutputSGMLFile ($file, $title, $section_id, $section_includes,
-                                \$synopsis, \$details);
-           }
-           $title = "";
-           $subsection = "";
-           $in_section = 0;
-           $section_includes = "";
-
-       } elsif (m/^(\S+)/) {
-           my $symbol = $1;
-           #print "  Symbol: $symbol\n";
-
-           my $declaration = $Declarations{$1};
-           if (defined ($declaration)) {
-               # We don't want standard macros/functions of GtkObjects,
-               # or private declarations.
-               if ($subsection ne "Standard" && $subsection ne "Private") {
-                   my ($synop, $desc) = &OutputDeclaration ($symbol,
-                                                            $declaration);
-                   $synopsis .= $synop;
-                   $details .= $desc;
-               }
-
-               # Note that the declaration has been output.
-               $DeclarationOutput{$symbol} = 1;
-           } else {
-               print "WARNING: No declaration for: $1\n";
-           }
-           $num_symbols++;
-       }
-    }
-    close (INPUT);
-
-    &OutputBook ($book_top, $book_bottom);
-}
-
-
-#############################################################################
-# Function    : OutputDeclaration
-# Description : Returns the synopsis and detailed description DocBook
-#              describing one function/macro etc.
-# Arguments   : $symbol - the name of the function/macro begin described.
-#              $declaration - the declaration of the function/macro.
-#############################################################################
-
-sub OutputDeclaration {
-    my ($symbol, $declaration) = @_;
-
-    my $type = $DeclarationTypes {$symbol};
-    if ($type eq 'MACRO') {
-       return &OutputMacro ($symbol, $declaration);
-    } elsif ($type eq 'TYPEDEF') {
-       return &OutputTypedef ($symbol, $declaration);
-    } elsif ($type eq 'STRUCT') {
-       return &OutputStruct ($symbol, $declaration);
-    } elsif ($type eq 'ENUM') {
-       return &OutputEnum ($symbol, $declaration);
-    } elsif ($type eq 'UNION') {
-       return &OutputUnion ($symbol, $declaration);
-    } elsif ($type eq 'VARIABLE') {
-       return &OutputVariable ($symbol, $declaration);
-
-    } elsif ($type eq 'FUNCTION') {
-       return &OutputFunction ($symbol, $declaration, $type);
-    } elsif ($type eq 'USER_FUNCTION') {
-       return &OutputFunction ($symbol, $declaration, $type);
-    } else {
-       die "Unknown symbol type";
-    }
-}
-
-
-#############################################################################
-# Function    : OutputMacro
-# Description : Returns the synopsis and detailed description of a macro.
-# Arguments   : $symbol - the macro.
-#              $declaration - the declaration of the macro.
-#############################################################################
-
-sub OutputMacro {
-    my ($symbol, $declaration) = @_;
-    my $id = &CreateValidSGMLID ($symbol);
-    my $synop = "#define     <link linkend=\"$id\">$symbol</link>";
-    my $desc;
-    my $args = "";
-    if ($declaration =~ m/^\s*#\s*define\s+\w+(\([^\)]*\))/) {
-       $args = $1;
-
-       if (length ($symbol) < $SYMBOL_FIELD_WIDTH) {
-           $synop .= (' ' x ($SYMBOL_FIELD_WIDTH - length ($symbol)));
-       }
-
-       $synop .= &CreateValidSGML ($args);
-    }
-    $synop .= "\n";
-
-    if ($args ne "") {
-       $desc = "<refsect2>\n<title><anchor id=\"$id\">${symbol}()</title>\n";
-    } else {
-       $desc = "<refsect2>\n<title><anchor id=\"$id\">$symbol</title>\n";
-    }
-    # Don't output the macro definition if is is a conditional macro or it
-    # looks like a function, i.e. starts with "g_" or "_?gnome_", or it is
-    # longer than 2 lines, otherwise we get lots of complicated macros like
-    # g_assert.
-    if (!defined ($DeclarationConditional{$symbol}) && ($symbol !~ m/^g_/)
-       && ($symbol !~ m/^_?gnome_/) && (($declaration =~ tr/\n//) < 2)) {
-       $declaration = &CreateValidSGML ($declaration);
-       $desc .= "<programlisting>$declaration</programlisting>\n";
-    } else {
-       $desc .= "<programlisting>#define     $symbol";
-       $desc .= &CreateValidSGML ($args);
-       $desc .= "</programlisting>\n";
-    }
-    if (defined ($SymbolDocs{$symbol})) {
-       $desc .= &ExpandAbbreviations($SymbolDocs{$symbol});
-    }
-    $desc .= &OutputParamDescriptions ("MACRO", $symbol);
-    $desc .= "</refsect2>\n";
-    return ($synop, $desc);
-}
-
-
-#############################################################################
-# Function    : OutputTypedef
-# Description : Returns the synopsis and detailed description of a typedef.
-# Arguments   : $symbol - the typedef.
-#              $declaration - the declaration of the typedef,
-#                e.g. 'typedef unsigned int guint;'
-#############################################################################
-
-sub OutputTypedef {
-    my ($symbol, $declaration) = @_;
-    my $id = &CreateValidSGMLID ($symbol);
-    my $synop = "typedef     <link linkend=\"$id\">$symbol</link>;\n";
-    my $desc = "<refsect2>\n<title><anchor id=\"$id\">$symbol</title>\n";
-    if (!defined ($DeclarationConditional{$symbol})) {
-       $declaration = &CreateValidSGML ($declaration);
-       $desc .= "<programlisting>$declaration</programlisting>\n";
-    }
-    if (defined ($SymbolDocs{$symbol})) {
-       $desc .= &ExpandAbbreviations($SymbolDocs{$symbol});
-    }
-    $desc .= "</refsect2>\n";
-    return ($synop, $desc);
-}
-
-
-#############################################################################
-# Function    : OutputStruct
-# Description : Returns the synopsis and detailed description of a struct.
-#              We check if it is a widget struct, and if so we only output
-#              parts of it that are noted as public fields.
-#              We also use a different SGML ID for widget structs, since the
-#              original ID is used for the entire RefEntry.
-# Arguments   : $symbol - the struct.
-#              $declaration - the declaration of the struct.
-#############################################################################
-
-sub OutputStruct {
-    my ($symbol, $declaration) = @_;
-
-    my $is_widget_struct = 0;
-    if (&CheckIsObject ($symbol)) {
-#      print "Found widget struct: $symbol\n";
-       $is_widget_struct = 1;
-    }
-
-    my $id;
-    if ($is_widget_struct) {
-       $id = &CreateValidSGMLID ($symbol . "_struct");
-    } else {
-       $id = &CreateValidSGMLID ($symbol);
-    }
-    my $synop = "struct      <link linkend=\"$id\">$symbol</link>;\n";
-    my $desc = "<refsect2>\n<title><anchor id=\"$id\">struct $symbol</title>\n";
-
-    # Form a pretty-printed, private-data-removed form of the declaration
-
-    my $decl_out;
-    if ($declaration =~ m/^\s*$/) {
-#      print "Found opaque struct\n";
-       $decl_out = "struct $symbol;";
-    } elsif ($is_widget_struct) {
-       my $public = 0;
-       my $new_declaration = "";
-       my $decl_line;
-       foreach $decl_line (split (/\n/, $declaration)) {
-#          print "Struct line: $decl_line\n";
-           if ($decl_line =~ m%/\*\s*<\s*public\s*>\s*\*/%) {
-               $public = 1;
-           } elsif ($decl_line =~ m%/\*\s*<\s*private\s*>\s*\*/%) {
-               $public = 0;
-           } elsif ($public) {
-               $new_declaration .= $decl_line . "\n";
-           }
-       }
-       if ($new_declaration) {
-           $decl_out = "struct $symbol {\n" . $new_declaration;
-           # If we finished with public set, we already have the struct end.
-           if ($public == 0) {
-               $decl_out .= "};\n";
-           }
-       } else {
-           $decl_out = "struct $symbol;";
-       }
-    } else {
-       $decl_out = $declaration;
-    }
-
-    $decl_out = &CreateValidSGML ($decl_out);
-    $desc .= "<programlisting>$decl_out</programlisting>\n";
-    if (defined ($SymbolDocs{$symbol})) {
-       $desc .= &ExpandAbbreviations($SymbolDocs{$symbol});
-    }
-
-    # Create a table of fields and descriptions
-
-    # FIXME: Inserting &nbsp's into the produced type declarations here would
-    #        improve the output in most situations ... except for function
-    #        members of structs!
-    my @fields = ParseStructDeclaration($declaration, $is_widget_struct, \&MakeXRef,
-                                       sub {
-                                           "<structfield>$_[0]</structfield>";
-                                       });
-    my $params = $SymbolParams{$symbol};
-
-    # If no parameters are filled in, we don't generate the description
-    # table, for backwards compatibility 
-
-    my $found = 0;
-    if (defined $params) {
-       for (my $i = 1; $i <= $#$params; $i += 2) {
-           if ($params->[$i] =~ /\S/) {
-               $found = 1;
-               last;
-           }
-       }
-    }
-    
-    if ($found) {
-       my %field_descrs = @$params;
-       
-           $desc .= <<EOF;
-<informaltable pgwide=1 frame="none" role="struct">
-<tgroup cols="2">
-<colspec colwidth="2*">
-<colspec colwidth="8*">
-<tbody>
-EOF
-       while (@fields) {
-           my $field_name = shift @fields;
-           my $text = shift @fields;
-           my $field_descr = $field_descrs{$field_name};
-
-           $desc .= "<row>\n<entry>$text</entry>\n";
-           if (defined $field_descr) {
-               $desc .= "<entry>".&ExpandAbbreviations($field_descr)."</entry>\n";
-           } else {
-               $desc .= "<entry></entry>\n";
-           }
-            $desc .= "</row>\n";
-       }
-    
-       $desc .= "</tbody></tgroup></informaltable>";
-    }
-    $desc .= "</refsect2>\n";
-    return ($synop, $desc);
-}
-
-
-#############################################################################
-# Function    : OutputEnum
-# Description : Returns the synopsis and detailed description of a enum.
-# Arguments   : $symbol - the enum.
-#              $declaration - the declaration of the enum.
-#############################################################################
-
-sub OutputEnum {
-    my ($symbol, $declaration) = @_;
-    my $id = &CreateValidSGMLID ($symbol);
-    my $synop = "enum        <link linkend=\"$id\">$symbol</link>;\n";
-    my $desc = "<refsect2>\n<title><anchor id=\"$id\">enum $symbol</title>\n";
-    $declaration = &CreateValidSGML ($declaration);
-    $desc .= "<programlisting>$declaration</programlisting>\n";
-    if (defined ($SymbolDocs{$symbol})) {
-       $desc .= &ExpandAbbreviations($SymbolDocs{$symbol});
-    }
-
-    # Create a table of fields and descriptions
-
-    my @members = ParseEnumDeclaration($declaration);
-    my $params = $SymbolParams{$symbol};
-
-    # If no parameters are filled in, we don't generate the description
-    # table, for backwards compatibility 
-
-    my $found = 0;
-    if (defined $params) {
-       for (my $i = 1; $i <= $#$params; $i += 2) {
-           if ($params->[$i] =~ /\S/) {
-               $found = 1;
-               last;
-           }
-       }
-    }
-    
-    if ($found) {
-       my %member_descrs = @$params;
-       
-           $desc .= <<EOF;
-<informaltable pgwide=1 frame="none" role="enum">
-<tgroup cols="2">
-<colspec colwidth="2*">
-<colspec colwidth="8*">
-<tbody>
-EOF
-       for my $member_name (@members) {
-           my $member_descr = $member_descrs{$member_name};
-           
-           $desc .= "<row>\n<entry><literal>$member_name</literal></entry>\n";
-           if (defined $member_descr) {
-               $desc .= "<entry>".&ExpandAbbreviations($member_descr)."</entry>\n";
-           } else {
-               $desc .= "<entry></entry>\n";
-           }
-            $desc .= "</row>\n";
-       }
-    
-       $desc .= "</tbody></tgroup></informaltable>";
-    }
-
-    $desc .= "</refsect2>\n";
-    return ($synop, $desc);
-}
-
-
-#############################################################################
-# Function    : OutputUnion
-# Description : Returns the synopsis and detailed description of a union.
-# Arguments   : $symbol - the union.
-#              $declaration - the declaration of the union.
-#############################################################################
-
-sub OutputUnion {
-    my ($symbol, $declaration) = @_;
-    my $id = &CreateValidSGMLID ($symbol);
-    my $synop = "union       <link linkend=\"$id\">$symbol</link>;\n";
-    my $desc = "<refsect2>\n<title><anchor id=\"$id\">union $symbol</title>\n";
-    $declaration = &CreateValidSGML ($declaration);
-    $desc .= "<programlisting>$declaration</programlisting>\n";
-    if (defined ($SymbolDocs{$symbol})) {
-       $desc .= &ExpandAbbreviations($SymbolDocs{$symbol});
-    }
-    $desc .= "</refsect2>\n";
-    return ($synop, $desc);
-}
-
-
-#############################################################################
-# Function    : OutputVariable
-# Description : Returns the synopsis and detailed description of a variable.
-# Arguments   : $symbol - the extern'ed variable.
-#              $declaration - the declaration of the variable.
-#############################################################################
-
-sub OutputVariable {
-    my ($symbol, $declaration) = @_;
-    my $id = &CreateValidSGMLID ($symbol);
-
-    my $synop;
-    if ($declaration =~ m/^\s*extern\s+((const\s+|unsigned\s+)*\w+)(\s+\*+|\*+|\s)(\s*)([A-Za-z]\w*)\s*;/) {
-       my $mod = defined ($1) ? $1 : "";
-       my $ptr = defined ($3) ? $3 : "";
-       my $space = defined ($4) ? $4 : "";
-       $synop = "extern      $mod$ptr$space<link linkend=\"$id\">$symbol</link>;\n";
-
-    } else {
-       $synop = "extern      <link linkend=\"$id\">$symbol</link>;\n";
-    }
-
-    my $desc = "<refsect2>\n<title><anchor id=\"$id\">$symbol</title>\n";
-    $declaration = &CreateValidSGML ($declaration);
-    $desc .= "<programlisting>$declaration</programlisting>\n";
-    if (defined ($SymbolDocs{$symbol})) {
-       $desc .= &ExpandAbbreviations($SymbolDocs{$symbol});
-    }
-    $desc .= "</refsect2>\n";
-    return ($synop, $desc);
-}
-
-
-#############################################################################
-# Function    : OutputFunction
-# Description : Returns the synopsis and detailed description of a function.
-# Arguments   : $symbol - the function.
-#              $declaration - the declaration of the function.
-#############################################################################
-
-sub OutputFunction {
-    my ($symbol, $declaration, $symbol_type) = @_;
-    my $id = &CreateValidSGMLID ($symbol);
-
-    # Take out the return type
-    $declaration =~ s/<RETURNS>\s*(const\s+|unsigned\s+)*(\w+)\s*(\**)\s*<\/RETURNS>\n//;
-    my $type_modifier = defined($1) ? $1 : "";
-    my $type = $2;
-    my $pointer = $3;
-    my $xref = &MakeXRef ($type);
-    my $start = "";
-    if ($symbol_type eq 'USER_FUNCTION') {
-#      $start = "typedef ";
-    }
-
-    my $ret_type_len = length ($start) + length ($type_modifier)
-       + length ($pointer) + length ($type);
-    my $ret_type_output;
-    my $symbol_len;
-    if ($ret_type_len < $RETURN_TYPE_FIELD_WIDTH) {
-       $ret_type_output = "$start$type_modifier$xref$pointer"
-           . (' ' x ($RETURN_TYPE_FIELD_WIDTH - $ret_type_len));
-       $symbol_len = 0;
-    } else {
-#      $ret_type_output = "$start$type_modifier$xref$pointer\n"
-#          . (' ' x $RETURN_TYPE_FIELD_WIDTH);
-
-       $ret_type_output = "$start$type_modifier$xref$pointer ";
-       $symbol_len = $ret_type_len + 1 - $RETURN_TYPE_FIELD_WIDTH;
-    }
-
-    $symbol_len += length ($symbol);
-    my $char1 = my $char2 = my $char3 = "";
-    if ($symbol_type eq 'USER_FUNCTION') {
-       $symbol_len += 3;
-       $char1 = "(";
-       $char2 = "*";
-       $char3 = ")";
-    }
-
-    my ($symbol_output, $symbol_desc_output);
-    if ($symbol_len < $SYMBOL_FIELD_WIDTH) {
-       $symbol_output = "$char1<link linkend=\"$id\">$char2$symbol</link>$char3"
-           . (' ' x ($SYMBOL_FIELD_WIDTH - $symbol_len));
-       $symbol_desc_output = "$char1$char2$symbol$char3"
-           . (' ' x ($SYMBOL_FIELD_WIDTH - $symbol_len));
-    } else {
-       $symbol_output = "$char1<link linkend=\"$id\">$char2$symbol</link>$char3\n"
-           . (' ' x ($SYMBOL_FIELD_WIDTH + $RETURN_TYPE_FIELD_WIDTH));
-       $symbol_desc_output = "$char1$char2$symbol$char3\n"
-           . (' ' x ($SYMBOL_FIELD_WIDTH + $RETURN_TYPE_FIELD_WIDTH));
-    }
-
-    my $synop = $ret_type_output . $symbol_output . '(';
-    my $desc = "<refsect2>\n<title><anchor id=\"$id\">${symbol} ()</title>\n";
-    $desc  .= "<programlisting>${ret_type_output}$symbol_desc_output(";
-
-    my $param_num = 0;
-    while ($declaration ne "") {
-       if ($declaration =~ s/^[\s,]+//) {
-           # skip whitespace and commas
-           next;
-
-       } elsif ($declaration =~ s/^void\s*[,\n]//) {
-           $synop .= "void";
-           $desc  .= "void";
-
-       } elsif ($declaration =~ s/^...\s*[,\n]//) {
-           if ($param_num == 0) {
-               $synop .= "...";
-               $desc  .= "...";
-           } else {
-               $synop .= ",\n"
-                   . (' ' x ($SYMBOL_FIELD_WIDTH + $RETURN_TYPE_FIELD_WIDTH))
-                   . " ...";
-               $desc  .= ",\n"
-                   . (' ' x ($SYMBOL_FIELD_WIDTH + $RETURN_TYPE_FIELD_WIDTH))
-                   . " ...";
-           }
-
-           # allow alphanumerics, '_', '[' & ']' in param names
-       } elsif ($declaration =~ s/^(const\s+|unsigned\s+)*(struct\s+)?(\w+)\s*(\**)\s*(const\s+)?(\**)?\s*(\w+)?\s*(\[\d*\])?\s*[,\n]//) {
-           my $mod1 = defined($1) ? $1 : "";
-           if (defined($2)) { $mod1 .= $2; }
-           my $type = $3;
-           my $ptr1 = $4;
-           my $mod2 = defined($5) ? $5 : "";
-           my $ptr2 = $6;
-           my $name = defined($7) ? $7 : "";
-           if ($name) { $ptr1 = " " . $ptr1; }
-           my $array = defined($8) ? $8 : "";
-           my $xref = &MakeXRef ($type);
-
-#          print "Type: $mod1$type $ptr1 $mod2 $name $array\n";
-           if ($param_num == 0) {
-               $synop .= "$mod1$xref$ptr1$mod2$ptr2$name$array";
-               $desc  .= "$mod1$xref$ptr1$mod2$ptr2$name$array";
-           } else {
-               $synop .= ",\n"
-                   . (' ' x ($SYMBOL_FIELD_WIDTH + $RETURN_TYPE_FIELD_WIDTH))
-                   . " $mod1$xref$ptr1$mod2$ptr2$name$array";
-               $desc  .= ",\n"
-                   . (' ' x ($SYMBOL_FIELD_WIDTH + $RETURN_TYPE_FIELD_WIDTH))
-                   . " $mod1$xref$ptr1$mod2$ptr2$name$array";
-           }
-
-           # Try to match parameters which are functions.
-       } elsif ($declaration =~ s/^(const\s+|unsigned\s+)*(struct\s+)?(\w+)\s*(\**)\s*(const\s+)?\(\s*\*\s*(\w+)\s*\)\s*\(([^)]*)\)\s*[,\n]//) {
-           my $mod1 = defined($1) ? $1 : "";
-           if (defined($2)) { $mod1 .= $2; }
-           my $type = $3;
-           my $ptr1 = $4;
-           my $mod2 = defined($5) ? $5 : "";
-           my $name = $6;
-           my $func_params = $7;
-           my $xref = &MakeXRef ($type);
-
-#          print "Type: $mod1$type$ptr1$mod2(*$name)($func_params)\n";
-           if ($param_num == 0) {
-               $synop .= "$mod1$xref$ptr1$mod2 (*$name) ($func_params)";
-               $desc  .= "$mod1$xref$ptr1$mod2 (*$name) ($func_params)";
-           } else {
-               $synop .= ",\n"
-                   . (' ' x ($SYMBOL_FIELD_WIDTH + $RETURN_TYPE_FIELD_WIDTH))
-                   . " $mod1$xref$ptr1$mod2 (*$name) ($func_params)";
-               $desc  .= ",\n"
-                   . (' ' x ($SYMBOL_FIELD_WIDTH + $RETURN_TYPE_FIELD_WIDTH))
-                   . " $mod1$xref$ptr1$mod2 (*$name) ($func_params)";
-           }
-
-       } else {
-           print "###Can't parse args for function $symbol: $declaration\n";
-           last;
-       }
-       $param_num++;
-    }
-    $synop .= ");\n";
-    $desc  .= ");</programlisting>\n";
-    if (defined ($SymbolDocs{$symbol})) {
-       $desc .= &ExpandAbbreviations($SymbolDocs{$symbol});
-    }
-
-    $desc .= &OutputParamDescriptions ("FUNCTION", $symbol);
-    $desc .= "</refsect2>\n";
-    return ($synop, $desc);
-}
-
-
-#############################################################################
-# Function    : OutputParamDescriptions
-# Description : Returns the DocBook output describing the parameters of a
-#              function, macro or signal handler.
-# Arguments   : $symbol_type - 'FUNCTION', 'MACRO' or 'SIGNAL'. Signal
-#                handlers have an implicit user_data parameter last.
-#              $symbol - the name of the function/macro being described.
-#############################################################################
-
-sub OutputParamDescriptions {
-    my ($symbol_type, $symbol) = @_;
-    my $output = "";
-
-    if (defined ($SymbolParams{$symbol})) {
-       my $returns = "";
-       my $params = $SymbolParams{$symbol};
-       my $params_desc = "";
-       if ($#$params < 0) {
-           print "WARNING: 0 parameters\n";
-       }
-       my $j;
-       for ($j = 0; $j <= $#$params; $j += 2) {
-           my $param_name = $$params[$j];
-           my $param = $$params[$j + 1];
-           if ($param_name eq "Returns") {
-               $returns = &ExpandAbbreviations($param);
-           } else {
-               if ($param_name eq "Varargs") {
-                   $param_name = "...";
-               }
-               $param = &ExpandAbbreviations($param);
-               $params_desc .= "<row><entry align=\"right\"><parameter>$param_name</parameter>&nbsp;:</entry>\n<entry>$param</entry></row>\n";
-           }
-       }
-
-       # Signals have an implicit user_data parameter which we describe.
-       if ($symbol_type eq "SIGNAL") {
-           $params_desc .= "<row><entry align=\"right\"><parameter>user_data</parameter>&nbsp;:</entry>\n<entry>user data set when the signal handler was connected.</entry></row>\n";
-       }
-
-       # Start a table if we need one.
-       if ($params_desc || $returns) {
-           $output .= <<EOF;
-<informaltable pgwide=1 frame="none" role="params">
-<tgroup cols="2">
-<colspec colwidth="2*">
-<colspec colwidth="8*">
-<tbody>
-EOF
-
-           if ($params_desc ne "") {
-#              $output .= "<row><entry>Parameters:</entry></row>\n";
-               $output .= $params_desc;
-           }
-
-           # Output the returns info last.
-           if ($returns) {
-               $output .= "<row><entry align=\"right\"><emphasis>Returns</emphasis> :</entry><entry>$returns</entry></row>\n";
-           }
-
-           # Finish the table.
-           $output .= "</tbody></tgroup></informaltable>";
-       }
-    }
-    return $output;
-}
-
-
-#############################################################################
-# Function    : OutputSGMLFile
-# Description : Outputs the final DocBook file for one section.
-# Arguments   : $file - the name of the file.
-#              $title - the title from the $MODULE-sections.txt file, which
-#                will be overriden by the title in the template file.
-#              $section_id - the SGML id to use for the toplevel tag.
-#              $includes - comma-separates list of include files added at top
-#                of synopsis, with '<' '>' around them.
-#              $synopsis - reference to the DocBook for the Synopsis part.
-#              $details - reference to the DocBook for the Details part.
-#############################################################################
-
-sub OutputSGMLFile {
-    my ($file, $title, $section_id, $includes, $synopsis, $details) = @_;
-
-    # Find out if this is a GtkObject or descendant.
-    my $signals_synop = "";
-    my $signals_desc = "";
-    my $args_synop = "";
-    my $args_desc = "";
-    my $hierarchy = "";
-    if (&CheckIsObject ($title)) {
-       ($signals_synop, $signals_desc) = &GetSignals ($title);
-       ($args_synop, $args_desc) = &GetArgs ($title);
-       $hierarchy = &GetHierarchy ($title);
-    }
-
-    # The edited title overrides the one from the sections file.
-    my $new_title = $SymbolDocs{"$TMPL_DIR/$file:Title"};
-    if (defined ($new_title) && $new_title !~ m/^\s*$/) {
-       $title = $new_title;
-#      print "Found title: $title\n";
-    }
-    my $short_desc = $SymbolDocs{"$TMPL_DIR/$file:Short_Description"};
-    if (!defined ($short_desc) || $short_desc =~ m/^\s*$/) {
-#      $short_desc = "one line description goes here.";
-       $short_desc = "";
-    } else {
-       $short_desc = &ExpandAbbreviations($short_desc);
-#      print "Found short_desc: $short_desc";
-    }
-    my $long_desc = $SymbolDocs{"$TMPL_DIR/$file:Long_Description"};
-    if (!defined ($long_desc) || $long_desc =~ m/^\s*$/) {
-       $long_desc = "<para>\nA longer description goes here.\n</para>\n";
-    } else {
-       $long_desc = &ExpandAbbreviations($long_desc);
-#      print "Found long_desc: $long_desc";
-    }
-    my $see_also = $SymbolDocs{"$TMPL_DIR/$file:See_Also"};
-    if (!defined ($see_also) || $see_also =~ m%^\s*(<para>)?\s*(</para>)?\s*$%) {
-       $see_also = "";
-    } else {
-       $see_also = &ExpandAbbreviations($see_also);
-#      print "Found see_also: $see_also";
-    }
-    if ($see_also) {
-       $see_also = "<refsect1>\n<title>See Also</title>\n$see_also\n</refsect1>\n";
-    }
-
-    my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) =
-       gmtime (time);
-    my $month = (qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec))[$mon];
-    $year += 1900;
-
-    my $include_output = "";
-    my $include;
-    foreach $include (split (/,/, $includes)) {
-       $include_output .= "#include &lt;${include}&gt;\n";
-    }
-
-    open (OUTPUT, ">$SGML_OUTPUT_DIR/$file")
-       || die "Can't create $SGML_OUTPUT_DIR/$file";
-
-    # Note: The refname and refpurpose are on the same line to stop
-    # docbook-to-man 1.08 putting them on separate lines.
-    print OUTPUT <<EOF;
-<refentry id="$section_id" revision="$mday $month $year">
-<refmeta>
-<refentrytitle>$title</refentrytitle>
-<manvolnum>3</manvolnum>
-<refmiscinfo>\U$MODULE\E Library</refmiscinfo>
-</refmeta>
-
-<refnamediv>
-<refname>$title</refname><refpurpose>$short_desc</refpurpose>
-</refnamediv>
-
-<refsynopsisdiv><title>Synopsis</title>
-<synopsis>
-
-$include_output
-
-$${synopsis}</synopsis>
-</refsynopsisdiv>
-
-$hierarchy
-$args_synop
-$signals_synop
-
-<refsect1>
-<title>Description</title>
-$long_desc
-</refsect1>
-
-<refsect1>
-<title>Details</title>
-$$details
-</refsect1>
-$args_desc
-$signals_desc
-
-$see_also
-</refentry>
-EOF
-    close (OUTPUT);
-}
-
-
-#############################################################################
-# Function    : OutputBook
-# Description : Outputs the SGML entities that need to be included into the
-#              main SGML file for the module.
-# Arguments   : $book_top - the declarations of the entities, which are added
-#                at the top of the main SGML file.
-#              $book_bottom - the references to the entities, which are
-#                added in the main SGML file at the desired position.
-#############################################################################
-
-sub OutputBook {
-    my ($book_top, $book_bottom) = @_;
-
-    open (OUTPUT, ">$SGML_OUTPUT_DIR/$MODULE-doc.top")
-       || die "Can't create $SGML_OUTPUT_DIR/$MODULE-doc.top";
-    print OUTPUT $book_top;
-    close (OUTPUT);
-
-    open (OUTPUT, ">$SGML_OUTPUT_DIR/$MODULE-doc.bottom")
-       || die "Can't create $SGML_OUTPUT_DIR/$MODULE-doc.bottom";
-    print OUTPUT $book_bottom;
-    close (OUTPUT);
-}
-
-
-#############################################################################
-# Function    : CreateValidSGMLID
-# Description : Creates a valid SGML 'id' from the given string.
-#              NOTE: SGML ids are case-insensitive, so we have a few special
-#                    cases to avoid clashes of ids.
-# Arguments   : $id - the string to be converted into a valid SGML id.
-#############################################################################
-
-sub CreateValidSGMLID {
-    my ($id) = $_[0];
-
-    # Append -CAPS to all all-caps identifiers
-
-    # Special case, '_' would end up as '' so we use 'gettext-macro' instead.
-    if ($id eq "_") { return "gettext-macro"; }
-
-    if ($id !~ /[a-z]/) { $id .= "-CAPS" };
-
-    $id =~ s/[_ ]/-/g;
-    $id =~ s/[,\.]//g;
-    $id =~ s/^-*//;
-    $id =~ s/::/-/g;
-
-    return $id;
-}
-
-
-#############################################################################
-# Function    : CreateValidSGML
-# Description : This turns any chars which are used in SGML into entities,
-#              e.g. '<' into '&lt;'
-# Arguments   : $text - the text to turn into proper SGML.
-#############################################################################
-
-sub CreateValidSGML {
-    my ($text) = @_;
-    $text =~ s/&/&amp;/g;      # Do this first, or the others get messed up.
-    $text =~ s/</&lt;/g;
-    $text =~ s/>/&gt;/g;
-    return $text;
-}
-
-
-#############################################################################
-# Function    : ExpandAbbreviations
-# Description : This turns the abbreviations function(), macro(), @param,
-#              %constant, and #symbol into appropriate DocBook markup.
-# Arguments   : $text - the text to expand.
-#############################################################################
-
-sub ExpandAbbreviations {
-    my ($text) = @_;
-
-    # Convert 'function()' or 'macro()'
-    $text =~ s/(\w+)\s*\(\)/&MakeXRef($1) . "()";/eg;
-
-    # Convert '@param'
-    $text =~ s/\@(\w+)/<parameter>$1<\/parameter>/g;
-
-    # Convert '%constant'. Also allow negative numbers, e.g. %-1.
-    $text =~ s/\%(-?\w+)/<literal>$1<\/literal>/g;
-
-    # Convert '#symbol'
-    $text =~ s/#([\w-]+)/&MakeXRef($1);/eg;
-
-    return $text;
-}
-
-
-#############################################################################
-# Function    : MakeXRef
-# Description : This returns a cross-reference link to the given symbol.
-#              Though it doesn't try to do this for a few standard C types
-#              that it knows won't be in the documentation.
-# Arguments   : $symbol - the symbol to try to create a XRef to.
-#############################################################################
-
-sub MakeXRef {
-    my ($symbol) = $_[0];
-#    print "Getting type link for $symbol\n";
-
-    # Don't create a link for some standard C types and functions, to cut
-    # down on the number of warnings output by jade.
-    if ($symbol eq "void" || $symbol eq "va_list" || $symbol eq "int"
-       || $symbol eq "char" || $symbol eq "printf" || $symbol eq "sprintf") {
-       return $symbol;
-    }
-
-    my $symbol_id = &CreateValidSGMLID ($symbol);
-    # Get rid of special '-struct' suffix.
-    $symbol =~ s/-struct$//;
-    return "<link linkend=\"$symbol_id\">$symbol</link>";
-}
-
-
-#############################################################################
-# Function    : GetHierarchy
-# Description : Returns the DocBook output describing the ancestors of a
-#              GtkObject subclass. It uses the global @Objects and
-#              @ObjectLevels arrays to walk up the tree.
-# Arguments   : $object - the GtkObject subclass.
-#############################################################################
-
-sub GetHierarchy {
-    my ($object) = @_;
-
-    # Find object in the objects array.
-    my $found = 0;
-    my $i;
-    for ($i = 0; $i < @Objects; $i++) {
-       if ($Objects[$i] eq $object) {
-           $found = 1;
-           last;
-       }
-    }
-    if (!$found) {
-       return "";
-    }
-
-    # Walk up the hierarchy, pushing ancestors onto the ancestors array.
-    my @ancestors = ();
-    push (@ancestors, $object);
-    my $level = $ObjectLevels[$i];
-#    print "Level: $level\n";
-    while ($level > 1) {
-       $i--;
-       if ($ObjectLevels[$i] < $level) {
-           push (@ancestors, $Objects[$i]);
-           $level = $ObjectLevels[$i];
-#          print "Level: $level\n";
-       }
-    }
-
-    # Output the ancestors list, indented and with links.
-    my $hierarchy = "<synopsis>\n\n";
-    $level = 0;
-    for ($i = $#ancestors; $i >= 0; $i--) {
-       my $link_text;
-       # Don't add a link to the current widget, i.e. when i == 0.
-       if ($i > 0) {
-           my $ancestor_id = &CreateValidSGMLID ($ancestors[$i]);
-           $link_text = "<link linkend=\"$ancestor_id\">$ancestors[$i]</link>";
-       } else {
-           $link_text = "$ancestors[$i]";
-       }
-       if ($level == 0) {
-           $hierarchy .= "  $link_text\n";
-       } else {
-#          $hierarchy .= ' ' x ($level * 6 - 3) . "|\n";
-           $hierarchy .= ' ' x ($level * 6 - 3) . "+----$link_text\n";
-       }
-       $level++;
-    }
-    $hierarchy .= "</synopsis>\n";
-
-    return <<EOF;
-<refsect1>
-<title>Object Hierarchy</title>
-$hierarchy
-</refsect1>
-EOF
-}
-
-
-#############################################################################
-# Function    : GetSignals
-# Description : Returns the synopsis and detailed description DocBook output
-#              for the signal handlers of a given GtkObject subclass.
-# Arguments   : $object - the GtkObject subclass, e.g. 'GtkButton'.
-#############################################################################
-
-sub GetSignals {
-    my ($object) = @_;
-    my $synop = "";
-    my $desc = "";
-
-    my $i;
-    for ($i = 0; $i <= $#SignalObjects; $i++) {
-       if ($SignalObjects[$i] eq $object) {
-#          print "Found signal: $SignalNames[$i]\n";
-           my $name = $SignalNames[$i];
-           my $symbol = "${object}::${name}";
-           my $id = &CreateValidSGMLID ("$object-$name");
-
-           my $name_len = length ($name) + 2;
-           if ($name_len < $SIGNAL_FIELD_WIDTH) {
-               $synop .= "&quot;<link linkend=\"$id\">$name</link>&quot;"
-                   . (' ' x ($SIGNAL_FIELD_WIDTH - $name_len));
-           } else {
-               $synop .= "&quot;<link linkend=\"$id\">$name</link>&quot;\n"
-                   . (' ' x $SIGNAL_FIELD_WIDTH);
-           }
-
-           $desc .= "<refsect2><title><anchor id=\"$id\">The &quot;$name&quot; signal</title>\n";
-           $desc .= "<programlisting>";
-
-           $SignalReturns[$i] =~ m/\s*(const\s*)?(\w+)\s*(\**)/;
-           my $type_modifier = defined($1) ? $1 : "";
-           my $type = $2;
-           my $pointer = $3;
-           my $xref = &MakeXRef ($type);
-
-           my $ret_type_len = length ($type_modifier) + length ($pointer)
-               + length ($type);
-           my $ret_type_output = "$type_modifier$xref$pointer"
-               . (' ' x ($RETURN_TYPE_FIELD_WIDTH - $ret_type_len));
-
-           $synop .= "${ret_type_output}user_function      (";
-           $desc  .= "${ret_type_output}user_function                  (";
-
-           my @params = split ("\n", $SignalPrototypes[$i]);
-           my $j;
-           for ($j = 0; $j <= $#params; $j++) {
-               # allow alphanumerics, '_', '[' & ']' in param names
-               if ($params[$j] =~ m/^\s*(\w+)\s*(\**)\s*([\w\[\]]+)\s*$/) {
-                   $type = $1;
-                   $pointer = $2;
-                   $name = $3;
-                   $xref = &MakeXRef ($type);
-                   $synop .= "$xref $pointer$name,\n";
-                   $synop .= (' ' x ($SYMBOL_FIELD_WIDTH + $RETURN_TYPE_FIELD_WIDTH));
-                   $desc .= "$xref $pointer$name,\n";
-                   $desc .= (' ' x ($SYMBOL_FIELD_WIDTH + $RETURN_TYPE_FIELD_WIDTH));
-               } else {
-                   print "###Can't parse arg: $params[$j]\nArgs:$SignalPrototypes[$i]\n";
-               }
-           }
-           $xref = &MakeXRef ("gpointer");
-           $synop .= "$xref user_data);\n";
-           $desc  .= "$xref user_data);</programlisting>\n";
-
-           if (defined ($SymbolDocs{$symbol})) {
-               $desc .= &ExpandAbbreviations($SymbolDocs{$symbol});
-           }
-
-           $desc .= &OutputParamDescriptions ("SIGNAL", $symbol);
-           $desc .= "</refsect2>";
-       }
-    }
-    if ($synop ne '') {
-        $synop = <<EOF;
-<refsect1>
-<title>Signal Prototypes</title>
-<synopsis>
-
-${synop}</synopsis>
-</refsect1>
-EOF
-       $desc  = <<EOF;
-<refsect1>
-<title>Signals</title>
-$desc
-</refsect1>
-EOF
-    }
-    return ($synop, $desc);
-}
-
-
-#############################################################################
-# Function    : GetArgs
-# Description : Returns the synopsis and detailed description DocBook output
-#              for the Args of a given GtkObject subclass.
-# Arguments   : $object - the GtkObject subclass, e.g. 'GtkButton'.
-#############################################################################
-
-sub GetArgs {
-    my ($object) = @_;
-    my $synop = "";
-    my $desc = "";
-
-    my $i;
-    for ($i = 0; $i <= $#ArgObjects; $i++) {
-       if ($ArgObjects[$i] eq $object) {
-#          print "Found arg: $ArgNames[$i]\n";
-           my $name = $ArgNames[$i];
-           # Remember only one colon so we don't clash with signals.
-           my $symbol = "${object}:${name}";
-           # I've used two dashes here for the same reason.
-           my $id = &CreateValidSGMLID ("$object--$name");
-
-           my $type = $ArgTypes[$i];
-           my $type_output;
-
-           if ($type eq "GtkSignal") {
-               $type = "GtkSignalFunc, gpointer";
-               $type_output = &MakeXRef ("GtkSignalFunc") . ", "
-                   . &MakeXRef ("gpointer");
-           } elsif ($type eq "GtkString") {
-               $type = "gchar*";
-               $type_output = &MakeXRef ("gchar") . "*";
-           } else {
-               $type_output = &MakeXRef ($type);
-           }
-
-           my $flags = $ArgFlags[$i];
-           my $flags_string = "";
-
-           if ($flags =~ m/r/) {
-               $flags_string = "Read";
-           }
-           if ($flags =~ m/w/) {
-               if ($flags_string) { $flags_string .= " / "; }
-               $flags_string .= "Write";
-           }
-           if ($flags =~ m/x/) {
-               if ($flags_string) { $flags_string .= " / "; }
-               $flags_string .= "Construct";
-           }
-           if ($flags =~ m/X/) {
-               if ($flags_string) { $flags_string .= " / "; }
-               $flags_string .= "Construct Only";
-           }
-           if ($flags =~ m/c/) {
-               if ($flags_string) { $flags_string .= " / "; }
-               $flags_string .= "Child";
-           }
-
-           my $pad1 = " " x (20 - length ($name));
-           my $pad2 = " " x (20 - length ($type));
-           $synop .= "  &quot;<link linkend=\"$id\">$name</link>&quot;$pad1 $type_output$pad2 : $flags_string\n";
-
-           $desc .= "<varlistentry><term><anchor id=\"$id\">&quot;<literal>$name</literal>&quot; ($type_output : $flags_string)</term>\n<listitem>\n";
-
-           if (defined ($SymbolDocs{$symbol})) {
-               $desc .= &ExpandAbbreviations($SymbolDocs{$symbol});
-           } else {
-               $desc .= "<para></para>\n";
-           }
-
-           $desc .= "</listitem></varlistentry>\n";
-       }
-    }
-    if ($synop ne '') {
-        $synop = <<EOF;
-<refsect1>
-<title>Args</title>
-<synopsis>
-
-${synop}</synopsis>
-</refsect1>
-EOF
-       $desc  = <<EOF;
-<refsect1>
-<title>Args</title>
-<variablelist>
-$desc
-</variablelist>
-</refsect1>
-EOF
-    }
-    return ($synop, $desc);
-}
-
-
-#############################################################################
-# Function    : ReadSourceDocumentation
-# Description : This reads in the documentation embedded in comment blocks
-#              in the source code (for Gnome).
-#              
-#              Parameter descriptions override any in the template files.
-#              Function descriptions are placed before any description from
-#              the template files.
-#
-#              It recursively descends the source directory looking for .c
-#              files and scans them looking for specially-formatted comment
-#              blocks.
-#
-# Arguments   : $source_dir - the directory to scan.
-#############################################################################
-
-sub ReadSourceDocumentation {
-    my ($source_dir) = @_;
-#    print "Scanning source directory: $source_dir\n";
-
-    # This array holds any subdirectories found.
-    my (@subdirs) = ();
-    
-    opendir (SRCDIR, $source_dir)
-       || die "Can't open source directory $source_dir: $!";
-    my $file;
-    foreach $file (readdir (SRCDIR)) {
-       if ($file =~ /^\./) {
-           next;
-       } elsif (-d "$source_dir/$file") {
-           push (@subdirs, $file);
-       } elsif ($file =~ m/\.c$/) {
-           &ScanSourceFile ("$source_dir/$file");
-       }
-    }
-    closedir (SRCDIR);
-
-    # Now recursively scan the subdirectories.
-    my $dir;
-    foreach $dir (@subdirs) {
-       &ReadSourceDocumentation ("$source_dir/$dir");
-    }
-}
-
-
-#############################################################################
-# Function    : ScanSourceFile
-# Description : Scans one source file looking for specially-formatted comment
-#              blocks. It calls &MergeSourceDocumentation to merge any
-#              documentation found with the documentation already read in
-#              from the template files.
-#              
-# Arguments   : $file - the file to scan.
-#############################################################################
-
-sub ScanSourceFile {
-    my ($file) = @_;
-
-#    print "Scanning source file: $file\n";
-
-    open (SRCFILE, $file)
-       || die "Can't open $file: $!";
-    my $in_comment_block = 0;
-    my $symbol;
-    my ($in_description, $in_return);
-    my ($description, $return_desc, $return_start);
-    my $current_param;
-    my @params;
-    while (<SRCFILE>) {
-       # Look for the start of a comment block.
-       if (!$in_comment_block) {
-           if (m%^\s*/\*\*\s%) {
-#              print "Found comment block start\n";
-               $in_comment_block = 1;
-
-               # Reset all the symbol data.
-               $symbol = "";
-               $in_description = 0;
-               $in_return = 0;
-               $description = "";
-               $return_desc = "";
-               $current_param = -1;
-               @params = ();
-           }
-           next;
-       }
-
-       # We're in a comment block. Check if we've found the end of it.
-       if (m%^\s*\*+/%) {
-#          print "Found comment block end: $symbol\n";
-           if (!$symbol) {
-               print <<EOF;
-WARNING: symbol name not found in comment block.
- $file line $.
-EOF
-           } else {
-               # Add the return value description onto the end of the params.
-               if ($return_desc) {
-                   push (@params, "Returns");
-                   push (@params, $return_desc);
-               }
-               $SourceSymbolDocs{$symbol} = $description;
-               $SourceSymbolParams{$symbol} = [ @params ];
-           }
-
-           $in_comment_block = 0;
-           next;
-       }
-
-       # Get rid of ' * ' at start of every line in the comment block.
-       s%^\s*\*\s*%%;
-       # But make sure we don't get rid of the newline at the end.
-       if (!$_) {
-           $_ = "\n";
-       }
-
-       # If we haven't found the symbol name yet, look for it.
-       if (!$symbol) {
-           if (m%^(\w+)\s*:?%) {
-               $symbol = $1;
-           }
-           next;
-       }
-
-       # If we're in the return value description, add it to the end.
-       if ($in_return) {
-           # If we find another valid returns line, we assume that the first
-           # one was really part of the description.
-           if (m%^(returns:|return\s+value:|returns\s*)%i) {
-               $description .= $return_start . $return_desc;
-               $return_start = $1;
-               $return_desc = $';
-           } else {
-               $return_desc .= $_;
-           }
-           next;
-       }
-
-       # If we're in the description part, check for the 'Return' line.
-       # If that isn't found, add the text to the end.
-       if ($in_description) {
-           # Get rid of 'Description:'
-           s%^Description:%%;
-
-           if (m%^(returns:|return\s+value:|returns\s*)%i) {
-#              print "RETURNS: $_";
-               $return_start = $1;
-               $return_desc = $';
-               $in_return = 1;
-               next;
-           }
-
-           $description .= $_;
-           next;
-       }
-
-       # We must be in the parameters. Check for the empty line at the end.
-       if (m%^$%) {
-           $in_description = 1;
-           next;
-       }
-
-       # Look for a parameter name.
-       if (m%^@(\S+)\s*:%) {
-           my $param_name = $1;
-#          print "Found parameter: $param_name\n";
-           # Allow '...' as the Varargs parameter.
-           if ($param_name eq "...") {
-               $param_name = "Varargs";
-           }
-           push (@params, $param_name);
-           push (@params, $');
-           $current_param += 2;
-           next;
-       }
-
-       # We must be in the middle of a parameter description, so add it on
-       # to the last element in @params.
-       if ($current_param == -1) {
-           print <<EOF
-ERROR parsing comment block file : parameter expected -
- $file:$.
-EOF
-       } else {
-           $params[$#params] .= $_;
-       }
-    }
-    close (SRCFILE);
-}
-
-
-#############################################################################
-# Function    : MergeSourceDocumentation
-# Description : This merges documentation read from a source file into the
-#              documentation read in from a template file.
-#              
-#              Parameter descriptions override any in the template files.
-#              Function descriptions are placed before any description from
-#              the template files.
-#
-# Arguments   : none
-#############################################################################
-
-sub MergeSourceDocumentation {
-    my $symbol;
-    foreach $symbol (keys (%SymbolDocs)) {
-       if (exists ($SourceSymbolDocs{$symbol})) {
-           my $src_doc = $SourceSymbolDocs{$symbol};
-           my $tmpl_doc = $SymbolDocs{$symbol};
-           $tmpl_doc = defined ($tmpl_doc) ? $tmpl_doc : "";
-           $src_doc =~ s/^\s+//;
-           $src_doc =~ s/\s+$//;
-
-           # Convert special SGML characters. I'm not sure if we want to do
-           # this but currently there are a couple of '&'s in the source code
-           # comment blocks which mess up the HTML output badly.
-           $src_doc = &CreateValidSGML ($src_doc);
-
-           # If there is a blank line, finish the paragraph and start another.
-           if ($src_doc =~ s%\n{2,}%\n</para>\n<para>\n%g) {
-#              print "Converted blank lines:\n$src_doc\n";
-           }
-           $SymbolDocs{$symbol} = "<para>\n$src_doc</para>\n$tmpl_doc";
-
-           # The templates contain the definitive parameter names and order,
-           # so we will not change that. We only override the actual text.
-           my $tmpl_params = $SymbolParams{$symbol};
-           if (!defined ($tmpl_params)) {
-               next;
-           }
-
-           my $params = $SourceSymbolParams{$symbol};
-           my $j;
-           for ($j = 0; $j <= $#$tmpl_params; $j += 2) {
-               my $tmpl_param_name = $$tmpl_params[$j];
-               my $tmpl_param_desc = $$tmpl_params[$j + 1];
-
-               # Try to find the param in the source comment documentation.
-               my $found = 0;
-               my $k;
-               for ($k = 0; $k <= $#$params; $k += 2) {
-                   my $param_name = $$params[$k];
-                   my $param_desc = $$params[$k + 1];
-
-                   # We accept changed in case, since the Gnome source docs
-                   # contain a lot of these.
-                   if ("\L$param_name" eq "\L$tmpl_param_name") {
-                       $found = 1;
-
-                       # Override the description.
-                       $$tmpl_params[$j + 1] = &CreateValidSGML ($param_desc);
-
-                       # Set the name to "" to mark it as used.
-                       $$params[$k] = "";
-                       last;
-                   }
-               }
-
-               # Output a warning if the parameter is not found.
-               if (!$found) {
-                   print <<EOF;
-WARNING: Parameter description missing in source code comment block -
-         Func: $symbol Param: $tmpl_param_name.
-EOF
-               }
-           }
-
-           # Now we output a warning if parameters have been described which
-           # do not exist.
-           for ($j = 0; $j <= $#$params; $j += 2) {
-               my $param_name = $$params[$j];
-               if ($param_name) {
-                   print <<EOF;
-WARNING: Parameter described in source code comment block but does not exist -
-         Func: $symbol Param: $param_name.
-EOF
-               }
-           }
-       }
-    }
-}
-
-
-#############################################################################
-# LIBRARY FUNCTIONS -  These functions are used in both gtkdoc-mkdb and
-#                      gtkdoc-mktmpl and should eventually be moved to a
-#                      separate library.
-#############################################################################
-
-#############################################################################
-# Function    : ReadDeclarationsFile
-# Description : This reads in a file containing the function/macro/enum etc.
-#              declarations.
-#              
-#              Note that in some cases there are several declarations with
-#              the same name, e.g. for conditional macros. In this case we
-#              set a flag in the %DeclarationConditional hash so the
-#              declaration is not shown in the docs.
-#
-#              If a macro and a function have the same name, e.g. for
-#              gtk_object_ref, the function declaration takes precedence.
-#
-#              Some opaque structs are just declared with 'typedef struct
-#              _name name;' in which case the declaration may be empty.
-#              The structure may have been found later in the header, so
-#              that overrides the empty declaration.
-#              
-# Arguments   : $file - the declarations file to read
-#              $override - if declarations in this file should override
-#                      any current declaration.
-#############################################################################
-
-sub ReadDeclarationsFile {
-    my ($file, $override) = @_;
-
-    if ($override == 0) {
-       %Declarations = ();
-       %DeclarationTypes = ();
-       %DeclarationConditional = ();
-       %DeclarationOutput = ();
-    }
-
-    open (INPUT, $file)
-       || die "Can't open $file";
-    my $declaration_type = "";
-    my $declaration_name;
-    my $declaration;
-    while (<INPUT>) {
-       if (!$declaration_type) {
-           if (m/^<([^>]+)>/) {
-               $declaration_type = $1;
-               $declaration_name = "";
-#              print "Found declaration: $declaration_type\n";
-               $declaration = "";
-           }
-       } else {
-           if (m%^<NAME>(.*)</NAME>%) {
-               $declaration_name = $1;
-           } elsif (m%^</$declaration_type>%) {
-#              print "Found end of declaration: $declaration_name\n";
-               # Check that the declaration has a name
-               if ($declaration_name eq "") {
-                   print "ERROR: $declaration_type has no name $file:$.\n";
-               }
-
-               # Check if the symbol is already defined.
-               if (defined ($Declarations{$declaration_name})
-                   && $override == 0) {
-                   # Function declarations take precedence.
-                   if ($DeclarationTypes{$declaration_name} eq 'FUNCTION') {
-                       # Ignore it.
-                   } elsif ($declaration_type eq 'FUNCTION') {
-                       $Declarations{$declaration_name} = $declaration;
-                       $DeclarationTypes{$declaration_name} = $declaration_type;
-                   } elsif ($DeclarationTypes{$declaration_name}
-                             eq $declaration_type) {
-                       # If the existing declaration is empty override it.
-                       if ($declaration_type eq 'STRUCT') {
-                           if ($Declarations{$declaration_name} =~ m/^\s*$/) {
-                               $Declarations{$declaration_name} = $declaration;
-                           } elsif ($declaration =~ m/^\s*$/) {
-                               # Ignore an empty declaration.
-                           } else {
-                               print "WARNING: Structure has multiple definitions: $declaration_name\n";
-                           }
-
-                       } else {
-                           # set flag in %DeclarationConditional hash for
-                           # multiply defined macros/typedefs.
-                           $DeclarationConditional{$declaration_name} = 1;
-                       }
-                   } else {
-                       print "ERROR: $declaration_name has multiple definitions\n";
-                   }
-               } else {
-                   $Declarations{$declaration_name} = $declaration;
-                   $DeclarationTypes{$declaration_name} = $declaration_type;
-               }
-               $declaration_type = "";
-           } else {
-               $declaration .= $_;
-           }
-       }
-    }
-    close (INPUT);
-}
-
-
-#############################################################################
-# Function    : ReadSignalsFile
-# Description : This reads in an existing file which contains information on
-#              all GTK signals. It creates the arrays @SignalNames and
-#              @SignalPrototypes containing info on the signals. The first
-#              line of the SignalPrototype is the return type of the signal
-#              handler. The remaining lines are the parameters passed to it.
-#              The last parameter, "gpointer user_data" is always the same
-#              so is not included.
-# Arguments   : $file - the file containing the signal handler prototype
-#                      information.
-#############################################################################
-
-sub ReadSignalsFile {
-    my ($file) = @_;
-
-    my $in_signal = 0;
-    my $signal_object;
-    my $signal_name;
-    my $signal_returns;
-    my $signal_prototype;
-
-    # Reset the signal info.
-    @SignalObjects = ();
-    @SignalNames = ();
-    @SignalReturns = ();
-    @SignalPrototypes = ();
-
-    if (! -f $file) {
-       return;
-    }
-    if (!open (INPUT, $file)) {
-       warn "Can't open $file - skipping signals\n";
-       return;
-    }
-    while (<INPUT>) {
-       if (!$in_signal) {
-           if (m/^<SIGNAL>/) {
-               $in_signal = 1;
-               $signal_object = "";
-               $signal_name = "";
-               $signal_returns = "";
-               $signal_prototype = "";
-           }
-       } else {
-           if (m/^<NAME>(.*)<\/NAME>/) {
-               $signal_name = $1;
-               if ($signal_name =~ m/^(.*)::(.*)$/) {
-                   $signal_object = $1;
-                   $signal_name = $2;
-#                  print "Found signal: $signal_name\n";
-               } else {
-                   print "Invalid signal name: $signal_name\n";
-               }
-           } elsif (m/^<RETURNS>(.*)<\/RETURNS>/) {
-               $signal_returns = $1;
-           } elsif (m%^</SIGNAL>%) {
-#              print "Found end of signal: ${signal_object}::${signal_name}\nReturns: ${signal_returns}\n${signal_prototype}";
-               push (@SignalObjects, $signal_object);
-               push (@SignalNames, $signal_name);
-               push (@SignalReturns, $signal_returns);
-               push (@SignalPrototypes, $signal_prototype);
-               $in_signal = 0;
-           } else {
-               $signal_prototype .= $_;
-           }
-       }
-    }
-    close (INPUT);
-}
-
-
-#############################################################################
-# Function    : ReadTemplateFile
-# Description : This reads in the manually-edited documentation file
-#              corresponding to the file currently being created, so we can
-#              insert the documentation at the appropriate places.
-#              It outputs %SymbolTypes, %SymbolDocs and %SymbolParams, which
-#              is a hash of arrays.
-#              NOTE: This function is duplicated in gtkdoc-mkdb (but
-#              slightly different).
-# Arguments   : $docsfile - the template file to read in.
-#              $skip_unused_params - 1 if the unused parameters should be
-#                      skipped.
-#############################################################################
-
-sub ReadTemplateFile {
-    my ($docsfile, $skip_unused_params) = @_;
-
-#    print "Reading $docsfile\n";
-    if (! -f $docsfile) {
-       print "File doesn't exist: $docsfile\n";
-       return; 
-    }
-
-    my $current_type = "";     # Type of symbol being read.
-    my $current_symbol = "";   # Name of symbol being read.
-    my $symbol_doc = "";               # Description of symbol being read.
-    my @params;                        # Parameter names and descriptions of current
-                               #   function/macro/function typedef.
-    my $current_param = -1;    # Index of parameter currently being read.
-                               #   Note that the param array contains pairs
-                               #   of param name & description.
-    my $in_unused_params = 0;  # True if we are reading in the unused params.
-
-    open (DOCS, $docsfile)
-       || die "Can't open file $docsfile: $!";
-    while (<DOCS>) {
-       if (m/^<!-- ##### ([A-Z_]+) (\S+) ##### -->/) {
-           my $type = $1;
-           my $symbol = $2;
-           if ($symbol eq "Title"
-               || $symbol eq "Short_Description"
-               || $symbol eq "Long_Description"
-               || $symbol eq "See_Also") {
-               $symbol = $docsfile . ":" . $symbol;
-#              print "Found symbol: $symbol\n";
-           }
-
-           # Store previous symbol, but remove any trailing blank lines.
-           if ($current_symbol ne "") {
-               $symbol_doc =~ s/\s+$//;
-               $SymbolTypes{$current_symbol} = $current_type;
-               $SymbolDocs{$current_symbol} = $symbol_doc;
-               if ($current_param >= 0) {
-                   $SymbolParams{$current_symbol} = [ @params ];
-               } else {
-                   # Delete any existing params in case we are overriding a
-                   # previously read template.
-                   delete $SymbolParams{$current_symbol};
-               }
-           }
-           $current_type = $type;
-           $current_symbol = $symbol;
-           $current_param = -1;
-           $in_unused_params = 0;
-           $symbol_doc = "";
-           @params = ();
-
-       } elsif (m/^<!-- # Unused Parameters # -->/) {
-#          print "DEBUG: Found unused parameters\n";
-           $in_unused_params = 1;
-           next;
-
-       } elsif ($in_unused_params && $skip_unused_params) {
-           # When outputting the DocBook we skip unused parameters.
-#          print "DEBUG: Skipping unused param: $_";
-           next;
-
-       } else {
-           # Check if param found
-           if (s/^\@(\S+):\s*//) {
-               my $param_name = $1;
-               # Allow variations of 'Returns'
-               if ($param_name =~ m/^[Rr]eturns?$/) {
-                   $param_name = "Returns";
-               }
-#              print "Found param: $param_name\n";
-               push (@params, $param_name);
-               push (@params, $_);
-               $current_param += 2;
-               next;
-           }
-
-           if ($current_param >= 0) {
-               $params[$current_param] .= $_;
-           } else {
-               $symbol_doc .= $_;
-           }
-       }
-    }
-
-    # Remember to finish the current symbol doccs.
-    if ($current_symbol ne "") {
-       $symbol_doc =~ s/\s+$//;
-       $SymbolTypes{$current_symbol} = $current_type;
-       $SymbolDocs{$current_symbol} = $symbol_doc;
-       if ($current_param >= 0) {
-           $SymbolParams{$current_symbol} = [ @params ];
-       } else {
-           delete $SymbolParams{$current_symbol};
-       }
-    }
-
-    close (DOCS);
-}
-
-
-#############################################################################
-# Function    : ReadObjectHierarchy
-# Description : This reads in the $MODULE-hierarchy.txt file containing all
-#              the GtkObject subclasses described in this module (and their
-#              ancestors).
-#              It places them in the @Objects array, and places their level
-#              in the widget hierarchy in the @ObjectLevels array, at the
-#              same index. GtkObject, the root object, has a level of 1.
-#   
-#               FIXME: the version in gtkdoc-mkdb also generates tree_index.sgml
-#               as it goes along, this should be split out into a separate
-#               function.
-# 
-# Arguments   : none
-#############################################################################
-
-sub ReadObjectHierarchy {
-    @Objects = ();
-    @ObjectLevels = ();
-
-    if (! -f $OBJECT_TREE_FILE) {
-       return;
-    }
-    if (!open (INPUT, $OBJECT_TREE_FILE)) {
-       warn "Can't open $OBJECT_TREE_FILE - skipping object tree\n";
-       return;
-    }
-    open (OUTPUT, ">$SGML_OUTPUT_DIR/tree_index.sgml")
-       || die "Can't create $SGML_OUTPUT_DIR/tree_index.sgml";
-    print (OUTPUT "<literallayout>\n");
-
-    while (<INPUT>) {
-        if (m/\S+/) {
-           my $object = $&;
-           my $level = (length($`)) / 2 + 1;
-#            print ("Level: $level  Object: $object\n");
-
-           my $xref = &MakeXRef ($object);
-           print (OUTPUT ' ' x ($level * 4), "$xref\n");
-           push (@Objects, $object);
-           push (@ObjectLevels, $level);
-        }
-    }
-    print (OUTPUT "</literallayout>\n");
-
-    close (INPUT);
-    close (OUTPUT);
-
-    &OutputObjectList;
-}
-
-
-#############################################################################
-# Function    : ReadArgsFile
-# Description : This reads in an existing file which contains information on
-#              all GTK args. It creates the arrays @ArgObjects, @ArgNames,
-#              @ArgTypes and @ArgFlags containing info on the args.
-# Arguments   : $file - the file containing the arg information.
-#############################################################################
-
-sub ReadArgsFile {
-    my ($file) = @_;
-
-    my $in_arg = 0;
-    my $arg_object;
-    my $arg_name;
-    my $arg_type;
-    my $arg_flags;
-
-    # Reset the signal info.
-    @ArgObjects = ();
-    @ArgNames = ();
-    @ArgTypes = ();
-    @ArgFlags = ();
-
-    if (! -f $file) {
-       return;
-    }
-    if (!open (INPUT, $file)) {
-       warn "Can't open $file - skipping args\n";
-       return;
-    }
-    while (<INPUT>) {
-       if (!$in_arg) {
-           if (m/^<ARG>/) {
-               $in_arg = 1;
-               $arg_object = "";
-               $arg_name = "";
-               $arg_type = "";
-               $arg_flags = "";
-           }
-       } else {
-           if (m/^<NAME>(.*)<\/NAME>/) {
-               $arg_name = $1;
-               if ($arg_name =~ m/^(.*)::(.*)$/) {
-                   $arg_object = $1;
-                   $arg_name = $2;
-#                  print "Found arg: $arg_name\n";
-               } else {
-                   print "Invalid arg name: $arg_name\n";
-               }
-           } elsif (m/^<TYPE>(.*)<\/TYPE>/) {
-               $arg_type = $1;
-           } elsif (m/^<FLAGS>(.*)<\/FLAGS>/) {
-               $arg_flags = $1;
-           } elsif (m%^</ARG>%) {
-#              print "Found end of arg: ${arg_object}::${arg_name}\n${arg_type} : ${arg_flags}\n";
-               push (@ArgObjects, $arg_object);
-               push (@ArgNames, $arg_name);
-               push (@ArgTypes, $arg_type);
-               push (@ArgFlags, $arg_flags);
-               $in_arg = 0;
-           }
-       }
-    }
-    close (INPUT);
-}
-
-
-#############################################################################
-# Function    : CheckIsObject
-# Description : Returns 1 if the given name is a GtkObject or a subclass.
-#              It uses the global @Objects array.
-#              Note that the @Objects array only contains classes in the
-#              current module and their ancestors - not all GTK classes.
-# Arguments   : $name - the name to check.
-#############################################################################
-
-sub CheckIsObject {
-    my ($name) = @_;
-
-    my $object;
-    foreach $object (@Objects) {
-       if ($object eq $name) {
-           return 1;
-       }
-    }
-    return 0;
-}
-
-
-#############################################################################
-# Function    : ParseStructDeclaration
-# Description : This function takes a structure declaration and
-#               breaks it into individual type declarations.
-# Arguments   : $declaration - the declaration to parse
-#               $is_object - true if this is an object structure
-#               $typefunc - function reference to apply to type
-#               $namefunc - function reference to apply to name
-#############################################################################
-
-sub ParseStructDeclaration {
-    my ($declaration, $is_object, $typefunc, $namefunc) = @_;
-
-    # Remove all private parts of the declaration
-
-    # For objects, assume private
-    if ($is_object) {
-       $declaration =~ s!(struct\s+\w*\s*\{)
-                         .*?
-                         (?:/\*\s*<\s*public\s*>\s*\*/|(?=\}))!$1!msgx;
-    }
-    
-    $declaration =~ s!\n?[ \t]*/\*\s*<\s*private\s*>\s*\*/
-                     .*?
-                     (?:/\*\s*<\s*public\s*>\s*\*/|(?=\}))!!msgx;
-    
-    # Remove all other comments;
-    $declaration =~ s@/\*([^*]+|\*(?!/))*\*/@ @g;
-
-    my @result = ();
-
-    if ($declaration =~ /^\s*$/) {
-       return @result;
-    }
-
-    # Prime match after "struct {" declaration
-    if (!scalar($declaration =~ m/struct\s+\w*\s*\{/msg)) {
-       die "Structure declaration '$declaration' does not begin with struct [NAME] {\n";
-    }
-
-    # Treat lines in sequence, allowing singly nested anonymous structs
-    # and unions.
-    while ($declaration =~ m/\s*([^{;]+(\{[^\}]*\}[^{;]+)?);/msg) {
-       my $line = $1;
-       
-       last if $line =~ /^\s*\}\s*\w*\s*$/;
-
-       # FIXME: Just ignore nested structs and unions for now
-       next if $line =~ /{/;
-
-       # FIXME: The regexes here are the same as in OutputFunction; 
-       #        this functionality should be separated out.
-
-       if ($line =~ m/^
-           (const\s+|unsigned\s+)*(struct\s+)? # mod1
-           (\w+)\s*                            # type
-           (\**)\s*                            # ptr1
-           (const\s+)?                         # mod2
-           (\**)?\s*                           # ptr2
-           (\w+(?:\s*,\s*\w+)*)\s*             # name
-           (?:((?:\[[^\]]*\]\s*)+) |           # array
-              (:\s*\d+))?\s*                   # bits
-                      $/x) {
-           my $mod1 = defined($1) ? $1 : "";
-           if (defined($2)) { $mod1 .= $2; }
-           my $type = $3;
-           my $ptr1 = $4;
-           my $mod2 = defined($5) ? $5 : "";
-           my $ptr2 = $6;
-           my $name = $7;
-           $ptr1 = " " . $ptr1;
-           my $array = defined($8) ? $8 : "";
-           my $bits =  defined($9) ? " $9" : "";
-           my $ptype = defined $typefunc ? $typefunc->($type) : $type;
-           
-           # FIXME:
-           # As a hack, we allow the "name" to be of the form
-           # "a, b, c". This isn't the correct C syntax, but
-           # at least we get "gint16 x, y" right. Such constructs
-           # should really be completely removed from the source.
-           # Or we should really try to understand the C syntax
-           # here...
-           
-           my @names = split /\s*,\s*/, $name;
-           for my $n (@names) {
-               push @result, $n;
-               if (defined $namefunc) {
-                   $n = $namefunc->($n);
-               }
-               push @result, "$mod1$ptype$ptr1$mod2$ptr2$n$array$bits";
-           }
-           
-        # Try to match structure members which are functions
-       } elsif ($line =~ m/^
-                (const\s+|unsigned\s+)*(struct\s+)?  # mod1 
-                (\w+)\s*                             # type
-                (\**)\s*                             # ptr1
-                (const\s+)?                          # mod2
-                \(\s*\*\s*(\w+)\s*\)\s*              # name
-                \(([^)]*)\)\s*                       # func_params
-                           $/x) {
-
-           my $mod1 = defined($1) ? $1 : "";
-           if (defined($2)) { $mod1 .= $2; }
-           my $type = $3;
-           my $ptr1 = $4;
-           my $mod2 = defined($5) ? $5 : "";
-           my $name = $6;
-           my $func_params = $7;
-           my $ptype = defined $typefunc ? $typefunc->($type) : $type;
-           my $pname = defined $namefunc ? $namefunc->($name) : $name;
-           
-           push @result, $name;
-           push @result, "$mod1$ptype$ptr1$mod2 (*$pname) ($func_params)";
-           
-       } else {
-           warn "Cannot parse structure field $line";
-       }
-    }
-    
-    return @result;
-}
-
-
-#############################################################################
-# Function    : ParseEnumDeclaration
-# Description : This function takes a enumeration declaration and
-#               breaks it into individual enum member declarations.
-# Arguments   : $declaration - the declaration to parse
-#############################################################################
-
-sub ParseEnumDeclaration {
-    my ($declaration, $is_object) = @_;
-
-    # Remove comments;
-    $declaration =~ s@/\*([^*]+|\*(?!/))*\*/@ @g;
-
-    my @result = ();
-
-    if ($declaration =~ /^\s*$/) {
-       return @result;
-    }
-
-    # Remove parenthesized expressions (in macros like GTK_BLAH = BLAH(1,3))
-    # to avoid getting confused by commas they might contain. This
-    # doesn't handle nested parentheses correctly.
-
-    $declaration =~ s/\([^)]+\)//g;
-
-    # Prime match after "typedef enum {" declaration
-    if (!scalar($declaration =~ m/typedef\s+enum\s*\{/msg)) {
-       die "Enum declaration '$declaration' does not begin with typedef enum {\n";
-    }
-
-    # Treat lines in sequence.
-    while ($declaration =~ m/\s*([^,\}]+)([,\}])/msg) {
-       my $line = $1;
-       my $terminator = $2;
-
-       if ($line =~ m/^(\w+)\s*(=.*)?$/msg) {
-           push @result, $1;
-           
-       # Special case for GIOCondition, where the values are specified by
-       # macros which expand to include the equal sign like '=1'.
-       } elsif ($line =~ m/^(\w+)\s*GLIB_SYSDEF_POLL/msg) {
-           push @result, $1;
-           
-       # Special case include of <gdk/gdkcursors.h>, just ignore it
-       } elsif ($line =~ m/^#include/) {
-           last;
-
-       } else {
-           warn "Cannot parse enumeration member $line";
-       }
-
-       last if $terminator eq '}';
-    }
-    
-    return @result;
-}
diff --git a/docs/plugins/gstdoc-mktmpl b/docs/plugins/gstdoc-mktmpl
deleted file mode 100755 (executable)
index 159c30d..0000000
+++ /dev/null
@@ -1,1346 +0,0 @@
-#!/usr/bin/perl -w
-#
-# gtk-doc - GTK DocBook documentation generator.
-# Copyright (C) 1998  Damon Chaplin
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program 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 General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-
-#############################################################################
-# Script      : gtkdoc-mktmpl
-# Description : This creates or updates the template files which contain the
-#              manually-edited documentation. (A 'template' is a simple text
-#              form which is filled in with the description of a function,
-#              macro, enum, or struct. For functions and macros it also
-#              contains fields for describing the parameters.)
-#
-#              This script reads in the existing templates, found in
-#              tmpl/*.sgml, moves these files to tmpl/*.sgml.bak, and then
-#              recreates the .sgml files according to the structure given in
-#              the file $MODULE-sections.txt.
-#
-#              Any new templates added, or new function parameters, are
-#              marked with 'FIXME' so you can do a grep to see which parts
-#              need updating.
-#
-#              Any templates which are no longer used (i.e. they are remove
-#              from $MODULE-sections.txt) are placed in the file
-#              tmpl/$MODULE-unused.txt. If they are included again later
-#              they are automatically copied back into position.
-#              If you are certain that these templates will never be used
-#              again you can delete them from $MODULE-unused.txt.
-#
-#              Any parameters to functions which are no longer used are
-#              separated from the rest of the parameters with the line
-#              '<!-- # Unused Parameters # -->'. It may be that the parameter
-#              name has just been changed, in which case you can copy the
-#              description to the parameter with the new name. You can delete
-#              the unused parameter descriptions when no longer needed.
-#############################################################################
-
-use strict;
-use Getopt::Long;
-
-# Options
-
-# name of documentation module
-my $MODULE;
-my $TMPL_DIR;
-my $FLAG_CHANGES;
-
-my %optctl = (module => \$MODULE,
-             'flag-changes' => \$FLAG_CHANGES,
-             'output-dir' => \$TMPL_DIR);
-GetOptions(\%optctl, "module=s", "flag-changes!", "output-dir:s");
-
-my $ROOT_DIR = ".";
-
-# The directory containing the template files.
-$TMPL_DIR = $TMPL_DIR ? $TMPL_DIR : "$ROOT_DIR/tmpl";
-
-# This file contains the object hierarchy.
-my $OBJECT_TREE_FILE = "$ROOT_DIR/$MODULE.hierarchy";
-
-# The file containing signal handler prototype information.
-my $SIGNALS_FILE = "$ROOT_DIR/$MODULE.signals";
-
-# The file containing Arg information.
-my $ARGS_FILE = "$ROOT_DIR/$MODULE.args";
-
-# Set the flag to indicate changes, if requested.
-my $CHANGES_FLAG = $FLAG_CHANGES ? "FIXME" : "";
-
-# These global arrays store information on signals. Each signal has an entry
-# in each of these arrays at the same index, like a multi-dimensional array.
-my @SignalObjects;     # The GtkObject which emits the signal.
-my @SignalNames;       # The signal name.
-my @SignalReturns;     # The return type.
-my @SignalPrototypes;  # The rest of the prototype of the signal handler.
-
-# These global arrays store information on Args. Each Arg has an entry
-# in each of these arrays at the same index, like a multi-dimensional array.
-my @ArgObjects;                # The GtkObject which has the Arg.
-my @ArgNames;          # The Arg name.
-my @ArgTypes;          # The Arg type - gint, GtkArrowType etc.
-my @ArgFlags;          # How the Arg can be used - readable/writable etc.
-
-# These global hashes store declaration info keyed on a symbol name.
-my %Declarations;
-my %DeclarationTypes;
-my %DeclarationConditional;
-my %DeclarationOutput;
-
-# These global hashes store the existing documentation.
-my %SymbolDocs;
-my %SymbolTypes;
-my %SymbolParams;
-
-# These global arrays store GtkObject and subclasses and the hierarchy.
-my @Objects;
-my @ObjectLevels;
-
-&ReadSignalsFile ($SIGNALS_FILE);
-&ReadArgsFile ($ARGS_FILE);
-&ReadObjectHierarchy;
-
-&ReadExistingTemplates;
-&BackupExistingTemplates;
-&UpdateTemplates ("$ROOT_DIR/$MODULE-sections.txt");
-&OutputUnusedTemplates;
-&CheckAllDeclarationsOutput;
-
-
-#############################################################################
-# Function    : ReadExistingTemplates
-# Description : This reads in all the existing documentation, into the global
-#              variables %SymbolDocs, %SymbolTypes, and %SymbolParams (a
-#              hash of arrays).
-# Arguments   : none
-#############################################################################
-
-sub ReadExistingTemplates {
-    %SymbolDocs = ();
-    %SymbolTypes = ();
-    %SymbolParams = ();
-
-    # Read the unused docs first, so they get overridden by any real docs.
-    # (though this shouldn't happen often).
-    my $unused_doc = "$TMPL_DIR/$MODULE-unused.sgml";
-    if (-e $unused_doc) {
-       &ReadTemplateFile ($unused_doc, 0);
-    }
-
-    while (<$TMPL_DIR/*.sgml>) {
-#      print "Reading $_\n";
-       if ($_ eq $unused_doc) {
-#          print "skipping $unused_doc\n";
-       } else {
-           &ReadTemplateFile ($_, 0);
-       }
-    }
-}
-
-
-#############################################################################
-# Function    : BackupExistingTemplates
-# Description : This moves all existing .sgml to .sgml.bak.
-# Arguments   : none
-#############################################################################
-
-sub BackupExistingTemplates {
-    while (<$TMPL_DIR/*.sgml>) {
-       my $backup_file = $_ . ".bak";
-#      print "Backing up $_ to $backup_file\n";
-       if (-e $backup_file) {
-           unlink ($backup_file)
-               || die "Can't delete old backup file: $backup_file";
-       }
-       rename ($_, $backup_file)
-           || die "Can't move $_ to $backup_file";
-    }
-}
-
-
-#############################################################################
-# Function    : UpdateTemplates
-# Description : This collects the output for each section of the docs, and
-#              outputs each file when the end of the section is found.
-# Arguments   : $file - the file containing the sections of the docs.
-#############################################################################
-
-sub UpdateTemplates {
-    my ($file) = @_;
-#    print "Reading: $file\n";
-
-    open (INPUT, $file)
-       || die "Can't open $file";
-
-    # Create the top output directory if it doesn't exist.
-    if (! -e $TMPL_DIR) {
-       mkdir ("$TMPL_DIR", 0777)
-           || die "Can't create directory: $TMPL_DIR";
-    }
-
-    my $title = "";
-    my $subsection = "";
-    my $output;
-    while (<INPUT>) {
-       if (m/^#/) {
-           next;
-
-       } elsif (m/^<SECTION>/) {
-           $output = "";
-
-       } elsif (m/^<SUBSECTION\s*(.*)>/i) {
-           $subsection = $1;
-           next;
-
-       } elsif (m/^<TITLE>(.*)<\/TITLE>/) {
-           $title = $1;
-#          print "Section: $title\n";
-
-           # We don't want warnings if object & class structs aren't used.
-#          $DeclarationOutput{$title} = 1;
-           $DeclarationOutput{"${title}Class"} = 1;
-
-       } elsif (m/^<FILE>(.*)<\/FILE>/) {
-           $file = $1;
-
-       } elsif (m/^<INCLUDE>(.*)<\/INCLUDE>/) {
-           next;
-
-       } elsif (m/^<\/SECTION>/) {
-           if ($title eq "") {
-               $title = $file;
-           }
-#          print "End of section: $title\n";
-
-           $file =~ s/\s/_/g;
-           $file .= ".sgml";
-
-           &OutputTemplateFile ($file, $title, \$output);
-
-           $title = "";
-           $subsection = "";
-
-       } elsif (m/^(\S+)/) {
-           my $symbol = $1;
-#          print "  Symbol: $symbol\n";
-
-           my $declaration = $Declarations{$1};
-           if (defined ($declaration)) {
-               # We don't want templates for standard macros/functions of
-               # GtkObjects or private declarations.
-               if ($subsection ne "Standard" && $subsection ne "Private") {
-                   $output .= &OutputDeclaration ($DeclarationTypes {$symbol},
-                                                  $symbol, $declaration);
-               }
-
-               # Note that the declaration has been output.
-               $DeclarationOutput{$symbol} = 1;
-
-               if ($declaration eq '##conditional##') {
-#                  print "Conditional $DeclarationTypes{$symbol}\n";
-               }
-           } else {
-               print "WARNING: No declaration for: $1\n";
-           }
-       }
-    }
-    close (INPUT);
-}
-
-
-#############################################################################
-# Function    : CheckAllDeclarationsOutput
-# Description : This steps through all the declarations that were loaded, and
-#              makes sure that each one has been output, by checking the
-#              corresponding flag in the %DeclarationOutput hash. It is
-#              intended to check that any new declarations in new versions
-#              of GTK/Gnome get added to the $MODULE-sections.txt file.
-# Arguments   : none
-#############################################################################
-
-sub CheckAllDeclarationsOutput {
-    my $num_unused = 0;
-    open (UNUSED, ">$ROOT_DIR/$MODULE-unused.txt")
-       || die "Can't open $ROOT_DIR/$MODULE-unused.txt";
-    my ($symbol);
-    foreach $symbol (keys (%Declarations)) {
-       if (!defined ($DeclarationOutput{$symbol})) {
-           print (UNUSED "$symbol\n");
-           $num_unused++;
-       }
-    }
-    close (UNUSED);
-    if ($num_unused != 0) {
-       print <<EOF;
-=============================================================================
-WARNING: $num_unused unused declarations.
-  These can be found in $MODULE-unused.txt.
-  They should be added to $MODULE-sections.txt in the appropriate place.
-=============================================================================
-EOF
-    }
-}
-
-
-#############################################################################
-# Function    : OutputDeclaration
-# Description : This returns the template for one symbol & declaration.
-#              Note that it uses the global %SymbolDocs and %SymbolParams to
-#              lookup any existing documentation.
-# Arguments   : $type - the type of the symbol ('FUNCTION'/'MACRO' etc.)
-#              $symbol - the symbol name.
-#              $declaration - the declaration of the symbol.
-#############################################################################
-
-sub OutputDeclaration {
-    my ($type, $symbol, $declaration) = @_;
-    my ($output) = "";
-
-#    print "Outputting $type: $symbol\n";
-
-    # See if symbol already has a description.
-    my ($symbol_desc) = $SymbolDocs{$symbol};
-    my ($template_exists);
-    if (defined ($symbol_desc)) {
-       $template_exists = 1;
-       $symbol_desc =~ s/\s+$//;
-    } else {
-       $template_exists = 0;
-       $symbol_desc = "<para>\n$CHANGES_FLAG\n</para>";
-    }
-
-    $output .= <<EOF;
-<!-- ##### $type $symbol ##### -->
-$symbol_desc
-
-EOF
-
-    # For functions, function typedefs and macros, we output the arguments.
-    # For functions and function typedefs we also output the return value.
-    if ($type eq "FUNCTION" || $type eq "USER_FUNCTION") {
-       # Take out the return type
-       $declaration =~ s/<RETURNS>\s*(const\s+|unsigned\s+)*(\w+)\s*(\**)\s*<\/RETURNS>\n//;
-       my ($ret_type) = $2;
-
-       my ($param_num) = 0;
-       my ($name);
-       while ($declaration ne "") {
-           if ($declaration =~ s/^[\s,]+//) {
-               # skip whitespace and commas
-               next;
-
-           } elsif ($declaration =~ s/^void\s*[,\n]//) {
-               if ($param_num != 0) {
-                   print "WARNING: void used as parameter in function $symbol\n";
-               }
-               
-           } elsif ($declaration =~ s/^...\s*[,\n]//) {
-               $output .= &OutputParam ($symbol, "Varargs",
-                                        $template_exists, 1, "");
-
-               # Try to match a standard parameter.
-           } elsif ($declaration =~ s/^(const\s+|unsigned\s+)*(struct\s+)?(\w+)\s*(\**)\s*(const\s+)?(\**)?\s*(\w+)?\s*(\[\d*\])?\s*[,\n]//) {
-               if (defined ($7)) {
-                   $name = $7;
-               } else {
-                   $name = "Param" . ($param_num + 1);
-               }
-               $output .= &OutputParam ($symbol, $name, $template_exists, 1,
-                                        "");
-
-               # Try to match parameters which are functions.
-           } elsif ($declaration =~ s/^(const\s+|unsigned\s+)*(struct\s+)?(\w+)\s*(\**)\s*(const\s+)?\(\s*\*\s*(\w+)\s*\)\s*\(([^)]*)\)\s*[,\n]//) {
-               $name = $6;
-               $output .= &OutputParam ($symbol, $name, $template_exists, 1,
-                                        "");
-
-           } else {
-               print "###Can't parse args for function $symbol: $declaration\n";
-               last;
-           }
-           $param_num++;
-       }
-
-    
-       if ($ret_type ne "void") {
-           $output .= &OutputParam ($symbol, "Returns", $template_exists, 1,
-                                    "");
-       }
-        $output .= &OutputOldParams ($symbol);
-       $output .= "\n";
-    }
-
-    if ($type eq "MACRO") {
-       if ($declaration =~ m/^\s*#\s*define\s+\w+\(([^\)]*)\)/) {
-           my ($param);
-           foreach $param (split (/,/, $1)) {
-               $param =~ s/^\s+//;
-               $param =~ s/\s*$//;
-               if ($param =~ m/\S/) {
-                   $output .= &OutputParam ($symbol, $param, $template_exists,
-                                            1, "");
-               }
-           }
-       }
-       $output .= &OutputParam ($symbol, "Returns", $template_exists, 0, "");
-       $output .= &OutputOldParams ($symbol);
-       $output .= "\n";
-    }
-
-    if ($type eq "STRUCT") {
-       my $is_object_struct = CheckIsObject ($symbol);
-       my @fields = ParseStructDeclaration($declaration, $is_object_struct);
-
-       for (my $i = 0; $i <= $#fields; $i += 2) {
-           my $field_name = $fields[$i];
-           $output .= &OutputParam ($symbol, $field_name, $template_exists, 1, "");
-       }
-    }
-
-    if ($type eq "ENUM") {
-       my @members = ParseEnumDeclaration($declaration);
-
-       for my $member (@members) {
-           $output .= &OutputParam ($symbol, $member, $template_exists, 1, "");
-       }
-    }
-
-    $output .= "\n";
-
-    # Remove the used docs from the hashes.
-    if ($template_exists) {
-       delete $SymbolDocs{$symbol};
-       delete $SymbolParams{$symbol};
-    }
-
-    return $output;
-}
-
-
-#############################################################################
-# Function    : OutputParam
-# Description : This outputs the part of a template for one parameter.
-#              It first checks if the parameter is already described, and if
-#              so it uses that description, and clears it so it isn't output
-#              as an old param.
-# Arguments   : $symbol - the symbol (function or macro) name.
-#              $param_to_output - the parameter to add.
-#              $template_exists - TRUE if the template already existed in
-#                template files. If it did, then we will flag any changes
-#                with 'FIXME'.
-#              $force_output - TRUE if the parameter should be output even
-#                if it didn't already exist in the template. (The return
-#                values of macros are added manually if required, and so we
-#                never add it here - we only copy it if it already exists.)
-#              $default_description - the default description of the
-#                parameter to be used if it doesn't already exist. (Signal
-#                handlers have a few common parameters.)
-#############################################################################
-
-sub OutputParam {
-    my ($symbol, $param_to_output, $template_exists,
-       $force_output, $default_description) = @_;
-    my ($j);
-
-    my ($params) = $SymbolParams{$symbol};
-    if (defined ($params)) {
-       for ($j = 0; $j <= $#$params; $j += 2) {
-           my $param_name = $$params[$j];
-           my $param_desc = $$params[$j + 1];
-
-           if ($param_name eq $param_to_output) {
-               $param_desc =~ s/\s+$//;
-               $$params[$j] = "";
-               $$params[$j + 1] = "";
-               return "\@$param_name: $param_desc\n";
-           }
-       }
-    }
-
-    # If the template was already in a file, flag the new parameter.
-    # If not, the template itself will be flagged, so we don't need to flag
-    # all the new parameters as well.
-    if ($force_output) {
-       if ($default_description ne "") {
-           $default_description =~ s/\s+$//;
-           return "\@$param_to_output: $default_description\n";
-       } else {
-           if ($template_exists) {
-               return "\@$param_to_output: $CHANGES_FLAG\n";
-           } else {
-               return "\@$param_to_output: \n";
-           }
-       }
-    }
-    return "";
-}
-
-
-#############################################################################
-# Function    : OutputOldParams
-# Description : This returns all the existing documentation for parameters of
-#              the given function/macro/signal symbol which are unused, with
-#              a comment before them.
-# Arguments   : $symbol - the symbol (function/macro/signal) name.
-#############################################################################
-
-sub OutputOldParams {
-    my ($symbol) = @_;
-    my $output = "";
-
-    my ($params) = $SymbolParams{$symbol};
-    if (defined ($params)) {
-       my $j;
-       for ($j = 0; $j <= $#$params; $j += 2) {
-           my $param_name = $$params[$j];
-           my $param_desc = $$params[$j + 1];
-
-           if ($param_name ne "") {
-               $param_desc =~ s/\s+$//;
-               $output .= "\@$param_name: $param_desc\n";
-           }
-       }
-    }
-    if ($output) {
-       $output = "<!-- # Unused Parameters # -->\n" . $output;
-    }
-    return $output;
-}
-
-
-#############################################################################
-# Function    : OutputTemplateFile
-# Description : This outputs one template file.
-# Arguments   : $file - the basename of the file to output.
-#              $title - the title from the $MODULE-sections.txt file. This
-#                will be overridden by any title given in the template file.
-#              $output - reference to the templates to output.
-#############################################################################
-
-sub OutputTemplateFile {
-    my ($file, $title, $output) = @_;
-
-    my ($short_desc, $long_desc, $see_also);
-
-    if (defined ($SymbolDocs{"$TMPL_DIR/$file:Title"})) {
-       $title = $SymbolDocs{"$TMPL_DIR/$file:Title"};
-       delete $SymbolDocs{"$TMPL_DIR/$file:Title"};
-    }
-    if (defined ($SymbolDocs{"$TMPL_DIR/$file:Short_Description"})) {
-       $short_desc = $SymbolDocs{"$TMPL_DIR/$file:Short_Description"};
-       delete $SymbolDocs{"$TMPL_DIR/$file:Short_Description"};
-    } else {
-       $short_desc = "";
-    }
-    if (defined ($SymbolDocs{"$TMPL_DIR/$file:Long_Description"})) {
-       $long_desc = $SymbolDocs{"$TMPL_DIR/$file:Long_Description"};
-       delete $SymbolDocs{"$TMPL_DIR/$file:Long_Description"};
-    } else {
-       $long_desc = "<para>\n\n</para>\n";
-    }
-    if (defined ($SymbolDocs{"$TMPL_DIR/$file:See_Also"})) {
-       $see_also = $SymbolDocs{"$TMPL_DIR/$file:See_Also"};
-       delete $SymbolDocs{"$TMPL_DIR/$file:See_Also"};
-    } else {
-       $see_also = "<para>\n\n</para>\n";
-    }
-
-    open (OUTPUT, ">$TMPL_DIR/$file")
-       || die "Can't create $TMPL_DIR/$file";
-
-    print (OUTPUT <<EOF);
-<!-- ##### SECTION Title ##### -->
-$title
-
-<!-- ##### SECTION Short_Description ##### -->
-$short_desc
-
-<!-- ##### SECTION Long_Description ##### -->
-$long_desc
-
-<!-- ##### SECTION See_Also ##### -->
-$see_also
-
-EOF
-
-    print (OUTPUT $$output);
-    &OutputSignalTemplates ($title);
-    &OutputArgTemplates ($title);
-    close (OUTPUT);
-}
-
-
-#############################################################################
-# Function    : OutputSignalTemplates
-# Description : Outputs templates for signal handlers.
-# Arguments   : $title - the title from the $MODULE-sections.txt file. If the
-#                file is describing a GtkObject subclass, the title should
-#                be the name of the class, e.g. 'GtkButton'.
-#############################################################################
-
-sub OutputSignalTemplates {
-    my ($title) = @_;
-
-    my $output = "";
-    my ($i, $template_exists);
-    for ($i = 0; $i <= $#SignalObjects; $i++) {
-       if ($SignalObjects[$i] eq $title) {
-#          print "Found signal: $SignalObjects[$i]\n";
-           my ($symbol) = "$SignalObjects[$i]::$SignalNames[$i]";
-
-           # See if symbol already has a description.
-           my ($symbol_desc) = $SymbolDocs{$symbol};
-           if (defined ($symbol_desc)) {
-               $template_exists = 1;
-               $symbol_desc =~ s/\s+$//;
-               delete $SymbolDocs{$symbol};
-           } else {
-               $template_exists = 0;
-               $symbol_desc = "<para>\n$CHANGES_FLAG\n</para>";
-           }
-
-           $output .= <<EOF;
-<!-- ##### SIGNAL $symbol ##### -->
-$symbol_desc
-
-EOF
-           
-           my @params = split ("[,\n]", $SignalPrototypes[$i]);
-           my ($j, $name);
-           for ($j = 0; $j <= $#params; $j++) {
-               my $param = $params[$j];
-               $param =~ s/^\s+//;
-               $param =~ s/\s*$//;
-               if ($param =~ m/^\s*$/) { next; }
-               if ($param =~ m/^void$/) { next; }
-
-               if ($param =~ m/^\s*(\w+)\s*(\**)\s*([\w\[\]]+)?\s*$/) {
-                   if (defined($3)) {
-                       $name = $3;
-                   } else {
-                       $name = "Param" . ($j + 1);
-                   }
-                   if ($j == 0) {
-                       $output .= &OutputParam ($symbol, $name,
-                                                $template_exists, 1,
-                                                "the object which received the signal.");
-                   } else {
-                       $output .= &OutputParam ($symbol, $name,
-                                                $template_exists, 1, "");
-                   }
-               }       
-           }
-           
-           if ($SignalReturns[$i] ne "void") {
-               $output .= &OutputParam ($symbol, "Returns", $template_exists,
-                                        1, "");
-           }
-           $output .= &OutputOldParams ($symbol);
-           $output .= "\n";
-       }
-    }
-    print (OUTPUT $output);
-}
-
-
-#############################################################################
-# Function    : OutputArgTemplates
-# Description : Outputs templates for Args.
-# Arguments   : $title - the title from the $MODULE-sections.txt file. If the
-#                file is describing a GtkObject subclass, the title should
-#                be the name of the class, e.g. 'GtkButton'.
-#############################################################################
-
-sub OutputArgTemplates {
-    my ($title) = @_;
-
-    my $output = "";
-    my $i;
-    for ($i = 0; $i <= $#ArgObjects; $i++) {
-       if ($ArgObjects[$i] eq $title) {
-#          print "Found arg: $ArgObjects[$i]\n";
-           # I've only used one colon so we don't clash with signals.
-           my ($symbol) = "$ArgObjects[$i]:$ArgNames[$i]";
-
-           # See if symbol already has a description.
-           my ($symbol_desc) = $SymbolDocs{$symbol};
-           if (defined ($symbol_desc)) {
-               delete $SymbolDocs{$symbol};
-               $symbol_desc =~ s/\s+$//;
-           } else {
-               $symbol_desc = "<para>\n$CHANGES_FLAG\n</para>";
-           }
-
-           $output .= <<EOF;
-<!-- ##### ARG $symbol ##### -->
-$symbol_desc
-
-EOF
-       }
-    }
-    print (OUTPUT $output);
-}
-
-
-#############################################################################
-# Function    : OutputUnusedTemplates
-# Description : This saves any unused documentation into $MODULE-unused.sgml.
-# Arguments   : none
-#############################################################################
-
-sub OutputUnusedTemplates {
-    my ($unused_file) = "$TMPL_DIR/$MODULE-unused.sgml";
-    open (UNUSED, ">$unused_file")
-       || die "Can't open file: $unused_file";
-
-    my $output = "";
-    my ($symbol, $symbol_desc);
-    while (($symbol, $symbol_desc) = each (%SymbolDocs)) {
-#      print "Unused: $symbol\n";
-
-       my $type = $SymbolTypes{$symbol};
-       if (!defined ($type)) {
-           $type = "UNKNOWN";
-           print "WARNING: Unused symbol $symbol has unknown type\n";
-       }
-
-    $output .= <<EOF;
-<!-- ##### $type $symbol ##### -->
-$symbol_desc
-
-EOF
-
-       my ($params) = $SymbolParams{$symbol};
-       if (defined ($params)) {
-           my $j;
-           for ($j = 0; $j <= $#$params; $j += 2) {
-               my $param_name = $$params[$j];
-               my $param_desc = $$params[$j + 1];
-               $param_desc =~ s/\s+$//;
-               $output .= "\@$param_name: $param_desc\n";
-           }
-       }
-       $output .= "\n";
-    }
-
-    print UNUSED $output;
-    close (UNUSED);
-}
-
-
-#############################################################################
-# LIBRARY FUNCTIONS -  These functions are used in both gtkdoc-mkdb and
-#                      gtkdoc-mktmpl and should eventually be moved to a
-#                      separate library.
-#############################################################################
-
-#############################################################################
-# Function    : ReadDeclarationsFile
-# Description : This reads in a file containing the function/macro/enum etc.
-#              declarations.
-#              
-#              Note that in some cases there are several declarations with
-#              the same name, e.g. for conditional macros. In this case we
-#              set a flag in the %DeclarationConditional hash so the
-#              declaration is not shown in the docs.
-#
-#              If a macro and a function have the same name, e.g. for
-#              gtk_object_ref, the function declaration takes precedence.
-#
-#              Some opaque structs are just declared with 'typedef struct
-#              _name name;' in which case the declaration may be empty.
-#              The structure may have been found later in the header, so
-#              that overrides the empty declaration.
-#              
-# Arguments   : $file - the declarations file to read
-#              $override - if declarations in this file should override
-#                      any current declaration.
-#############################################################################
-
-sub ReadDeclarationsFile {
-    my ($file, $override) = @_;
-
-    if ($override == 0) {
-       %Declarations = ();
-       %DeclarationTypes = ();
-       %DeclarationConditional = ();
-       %DeclarationOutput = ();
-    }
-
-    open (INPUT, $file)
-       || die "Can't open $file";
-    my $declaration_type = "";
-    my $declaration_name;
-    my $declaration;
-    while (<INPUT>) {
-       if (!$declaration_type) {
-           if (m/^<([^>]+)>/) {
-               $declaration_type = $1;
-               $declaration_name = "";
-#              print "Found declaration: $declaration_type\n";
-               $declaration = "";
-           }
-       } else {
-           if (m%^<NAME>(.*)</NAME>%) {
-               $declaration_name = $1;
-           } elsif (m%^</$declaration_type>%) {
-#              print "Found end of declaration: $declaration_name\n";
-               # Check that the declaration has a name
-               if ($declaration_name eq "") {
-                   print "ERROR: $declaration_type has no name $file:$.\n";
-               }
-
-               # Check if the symbol is already defined.
-               if (defined ($Declarations{$declaration_name})
-                   && $override == 0) {
-                   # Function declarations take precedence.
-                   if ($DeclarationTypes{$declaration_name} eq 'FUNCTION') {
-                       # Ignore it.
-                   } elsif ($declaration_type eq 'FUNCTION') {
-                       $Declarations{$declaration_name} = $declaration;
-                       $DeclarationTypes{$declaration_name} = $declaration_type;
-                   } elsif ($DeclarationTypes{$declaration_name}
-                             eq $declaration_type) {
-                       # If the existing declaration is empty override it.
-                       if ($declaration_type eq 'STRUCT') {
-                           if ($Declarations{$declaration_name} =~ m/^\s*$/) {
-                               $Declarations{$declaration_name} = $declaration;
-                           } elsif ($declaration =~ m/^\s*$/) {
-                               # Ignore an empty declaration.
-                           } else {
-                               print "WARNING: Structure has multiple definitions: $declaration_name\n";
-                           }
-
-                       } else {
-                           # set flag in %DeclarationConditional hash for
-                           # multiply defined macros/typedefs.
-                           $DeclarationConditional{$declaration_name} = 1;
-                       }
-                   } else {
-                       print "WARNING: $declaration_name has multiple definitions\n";
-                   }
-               } else {
-                   $Declarations{$declaration_name} = $declaration;
-                   $DeclarationTypes{$declaration_name} = $declaration_type;
-               }
-               $declaration_type = "";
-           } else {
-               $declaration .= $_;
-           }
-       }
-    }
-    close (INPUT);
-}
-
-
-#############################################################################
-# Function    : ReadSignalsFile
-# Description : This reads in an existing file which contains information on
-#              all GTK signals. It creates the arrays @SignalNames and
-#              @SignalPrototypes containing info on the signals. The first
-#              line of the SignalPrototype is the return type of the signal
-#              handler. The remaining lines are the parameters passed to it.
-#              The last parameter, "gpointer user_data" is always the same
-#              so is not included.
-# Arguments   : $file - the file containing the signal handler prototype
-#                      information.
-#############################################################################
-
-sub ReadSignalsFile {
-    my ($file) = @_;
-
-    my $in_signal = 0;
-    my $signal_object;
-    my $signal_name;
-    my $signal_returns;
-    my $signal_prototype;
-
-    # Reset the signal info.
-    @SignalObjects = ();
-    @SignalNames = ();
-    @SignalReturns = ();
-    @SignalPrototypes = ();
-
-    if (! -f $file) {
-       return;
-    }
-    if (!open (INPUT, $file)) {
-       warn "Can't open $file - skipping signals\n";
-       return;
-    }
-    while (<INPUT>) {
-       if (!$in_signal) {
-           if (m/^<SIGNAL>/) {
-               $in_signal = 1;
-               $signal_object = "";
-               $signal_name = "";
-               $signal_returns = "";
-               $signal_prototype = "";
-           }
-       } else {
-           if (m/^<NAME>(.*)<\/NAME>/) {
-               $signal_name = $1;
-               if ($signal_name =~ m/^(.*)::(.*)$/) {
-                   $signal_object = $1;
-                   $signal_name = $2;
-#                  print "Found signal: $signal_name\n";
-               } else {
-                   print "Invalid signal name: $signal_name\n";
-               }
-           } elsif (m/^<RETURNS>(.*)<\/RETURNS>/) {
-               $signal_returns = $1;
-           } elsif (m%^</SIGNAL>%) {
-#              print "Found end of signal: ${signal_object}::${signal_name}\nReturns: ${signal_returns}\n${signal_prototype}";
-               push (@SignalObjects, $signal_object);
-               push (@SignalNames, $signal_name);
-               push (@SignalReturns, $signal_returns);
-               push (@SignalPrototypes, $signal_prototype);
-               $in_signal = 0;
-           } else {
-               $signal_prototype .= $_;
-           }
-       }
-    }
-    close (INPUT);
-}
-
-
-#############################################################################
-# Function    : ReadTemplateFile
-# Description : This reads in the manually-edited documentation file
-#              corresponding to the file currently being created, so we can
-#              insert the documentation at the appropriate places.
-#              It outputs %SymbolTypes, %SymbolDocs and %SymbolParams, which
-#              is a hash of arrays.
-#              NOTE: This function is duplicated in gtkdoc-mkdb (but
-#              slightly different).
-# Arguments   : $docsfile - the template file to read in.
-#              $skip_unused_params - 1 if the unused parameters should be
-#                      skipped.
-#############################################################################
-
-sub ReadTemplateFile {
-    my ($docsfile, $skip_unused_params) = @_;
-
-#    print "Reading $docsfile\n";
-    if (! -f $docsfile) {
-       print "File doesn't exist: $docsfile\n";
-       return; 
-    }
-
-    my $CurrentType = "";      # Type of symbol being read.
-    my $CurrentSymbol = "";    # Name of symbol being read.
-    my $SymbolDoc = "";                # Description of symbol being read.
-    my @Params;                        # Parameter names and descriptions of current
-                               #   function/macro/function typedef.
-    my $CurrentParam = -1;     # Index of parameter currently being read.
-                               #   Note that the param array contains pairs
-                               #   of param name & description.
-    my $InUnusedParameters = 0;        # True if we are reading in the unused params.
-
-    open (DOCS, $docsfile)
-       || die "Can't open file $docsfile: $!";
-    while (<DOCS>) {
-       if (m/^<!-- ##### ([A-Z_]+) (\S+) ##### -->/) {
-           my $type = $1;
-           my $symbol = $2;
-           if ($symbol eq "Title"
-               || $symbol eq "Short_Description"
-               || $symbol eq "Long_Description"
-               || $symbol eq "See_Also") {
-               $symbol = $docsfile . ":" . $symbol;
-#              print "Found symbol: $symbol\n";
-           }
-
-           # Store previous symbol, but remove any trailing blank lines.
-           if ($CurrentSymbol ne "") {
-               $SymbolDoc =~ s/\s+$//;
-               $SymbolTypes{$CurrentSymbol} = $CurrentType;
-               $SymbolDocs{$CurrentSymbol} = $SymbolDoc;
-               if ($CurrentParam >= 0) {
-                   $SymbolParams{$CurrentSymbol} = [ @Params ];
-               } else {
-                   # Delete any existing params in case we are overriding a
-                   # previously read template.
-                   delete $SymbolParams{$CurrentSymbol};
-               }
-           }
-           $CurrentType = $type;
-           $CurrentSymbol = $symbol;
-           $CurrentParam = -1;
-           $InUnusedParameters = 0;
-           $SymbolDoc = "";
-           @Params = ();
-
-       } elsif (m/^<!-- # Unused Parameters # -->/) {
-           $InUnusedParameters = 1;
-           next;
-
-       } else {
-           # Check if param found
-           if (s/^\@(\S+):\s*//) {
-               my $param_name = $1;
-               # Allow variations of 'Returns'
-               if ($param_name =~ m/^[Rr]eturns?$/) {
-                   $param_name = "Returns";
-               }
-#              print "Found param: $param_name\n";
-               push (@Params, $param_name);
-               push (@Params, $_);
-               $CurrentParam += 2;
-               next;
-           }
-
-           # When outputting the DocBook we skip unused parameters.
-           if (!$InUnusedParameters || !$skip_unused_params) {
-               if ($CurrentParam >= 0) {
-                   $Params[$CurrentParam] .= $_;
-               } else {
-                   $SymbolDoc .= $_;
-               }
-           }
-       }
-    }
-
-    # Remember to finish the current symbol doccs.
-    if ($CurrentSymbol ne "") {
-       $SymbolDoc =~ s/\s+$//;
-       $SymbolTypes{$CurrentSymbol} = $CurrentType;
-       $SymbolDocs{$CurrentSymbol} = $SymbolDoc;
-       if ($CurrentParam >= 0) {
-           $SymbolParams{$CurrentSymbol} = [ @Params ];
-       } else {
-           delete $SymbolParams{$CurrentSymbol};
-       }
-    }
-
-    close (DOCS);
-}
-
-
-#############################################################################
-# Function    : ReadObjectHierarchy
-# Description : This reads in the $MODULE-hierarchy.txt file containing all
-#              the GtkObject subclasses described in this module (and their
-#              ancestors).
-#              It places them in the @Objects array, and places their level
-#              in the widget hierarchy in the @ObjectLevels array, at the
-#              same index. GtkObject, the root object, has a level of 1.
-#   
-#               FIXME: the version in gtkdoc-mkdb also generates tree_index.sgml
-#               as it goes along, this should be split out into a separate
-#               function.
-# 
-# Arguments   : none
-#############################################################################
-
-sub ReadObjectHierarchy {
-    @Objects = ();
-    @ObjectLevels = ();
-
-    if (! -f $OBJECT_TREE_FILE) {
-       return;
-    }
-    if (!open (INPUT, $OBJECT_TREE_FILE)) {
-       warn "Can't open $OBJECT_TREE_FILE - skipping object tree\n";
-       return;
-    }
-    while (<INPUT>) {
-        if (m/\S+/) {
-           my $object = $&;
-           my $level = (length($`)) / 2 + 1;
-#            print ("Level: $level  Object: $object\n");
-
-           push (@Objects, $object);
-           push (@ObjectLevels, $level);
-        }
-    }
-
-    close (INPUT);
-}
-
-
-#############################################################################
-# Function    : ReadArgsFile
-# Description : This reads in an existing file which contains information on
-#              all GTK args. It creates the arrays @ArgObjects, @ArgNames,
-#              @ArgTypes and @ArgFlags containing info on the args.
-# Arguments   : $file - the file containing the arg information.
-#############################################################################
-
-sub ReadArgsFile {
-    my ($file) = @_;
-
-    my $in_arg = 0;
-    my $arg_object;
-    my $arg_name;
-    my $arg_type;
-    my $arg_flags;
-
-    # Reset the signal info.
-    @ArgObjects = ();
-    @ArgNames = ();
-    @ArgTypes = ();
-    @ArgFlags = ();
-
-    if (! -f $file) {
-       return;
-    }
-    if (!open (INPUT, $file)) {
-       warn "Can't open $file - skipping args\n";
-       return;
-    }
-    while (<INPUT>) {
-       if (!$in_arg) {
-           if (m/^<ARG>/) {
-               $in_arg = 1;
-               $arg_object = "";
-               $arg_name = "";
-               $arg_type = "";
-               $arg_flags = "";
-           }
-       } else {
-           if (m/^<NAME>(.*)<\/NAME>/) {
-               $arg_name = $1;
-               if ($arg_name =~ m/^(.*)::(.*)$/) {
-                   $arg_object = $1;
-                   $arg_name = $2;
-#                  print "Found arg: $arg_name\n";
-               } else {
-                   print "Invalid arg name: $arg_name\n";
-               }
-           } elsif (m/^<TYPE>(.*)<\/TYPE>/) {
-               $arg_type = $1;
-           } elsif (m/^<FLAGS>(.*)<\/FLAGS>/) {
-               $arg_flags = $1;
-           } elsif (m%^</ARG>%) {
-#              print "Found end of arg: ${arg_object}::${arg_name}\n${arg_type} : ${arg_flags}\n";
-               push (@ArgObjects, $arg_object);
-               push (@ArgNames, $arg_name);
-               push (@ArgTypes, $arg_type);
-               push (@ArgFlags, $arg_flags);
-               $in_arg = 0;
-           }
-       }
-    }
-    close (INPUT);
-}
-
-
-#############################################################################
-# Function    : CheckIsObject
-# Description : Returns 1 if the given name is a GtkObject or a subclass.
-#              It uses the global @Objects array.
-#              Note that the @Objects array only contains classes in the
-#              current module and their ancestors - not all GTK classes.
-# Arguments   : $name - the name to check.
-#############################################################################
-
-sub CheckIsObject {
-    my ($name) = @_;
-
-    my $object;
-    foreach $object (@Objects) {
-       if ($object eq $name) {
-           return 1;
-       }
-    }
-    return 0;
-}
-
-
-#############################################################################
-# Function    : ParseStructDeclaration
-# Description : This function takes a structure declaration and
-#               breaks it into individual type declarations.
-# Arguments   : $declaration - the declaration to parse
-#               $is_object - true if this is an object structure
-#               $typefunc - function reference to apply to type
-#               $namefunc - function reference to apply to name
-#############################################################################
-
-sub ParseStructDeclaration {
-    my ($declaration, $is_object, $typefunc, $namefunc) = @_;
-
-    # Remove all private parts of the declaration
-
-    # For objects, assume private
-    if ($is_object) {
-       $declaration =~ s!(struct\s+\w*\s*\{)
-                         .*?
-                         (?:/\*\s*<\s*public\s*>\s*\*/|(?=\}))!$1!msgx;
-    }
-    
-    $declaration =~ s!\n?[ \t]*/\*\s*<\s*private\s*>\s*\*/
-                     .*?
-                     (?:/\*\s*<\s*public\s*>\s*\*/|(?=\}))!!msgx;
-    
-    # Remove all other comments;
-    $declaration =~ s@/\*([^*]+|\*(?!/))*\*/@ @g;
-
-    my @result = ();
-
-    if ($declaration =~ /^\s*$/) {
-       return @result;
-    }
-
-    # Prime match after "struct {" declaration
-    if (!scalar($declaration =~ m/struct\s+\w*\s*\{/msg)) {
-       die "Structure declaration '$declaration' does not begin with struct [NAME] {\n";
-    }
-
-    # Treat lines in sequence, allowing singly nested anonymous structs
-    # and unions.
-    while ($declaration =~ m/\s*([^{;]+(\{[^\}]*\}[^{;]+)?);/msg) {
-       my $line = $1;
-       
-       last if $line =~ /^\s*\}\s*\w*\s*$/;
-
-       # FIXME: Just ignore nested structs and unions for now
-       next if $line =~ /{/;
-
-       # FIXME: The regexes here are the same as in OutputFunction; 
-       #        this functionality should be separated out.
-
-       if ($line =~ m/^
-           (const\s+|unsigned\s+)*(struct\s+)? # mod1
-           (\w+)\s*                            # type
-           (\**)\s*                            # ptr1
-           (const\s+)?                         # mod2
-           (\**)?\s*                           # ptr2
-           (\w+(?:\s*,\s*\w+)*)\s*             # name
-           (?:((?:\[[^\]]*\]\s*)+) |           # array
-              (:\s*\d+))?\s*                   # bits
-                      $/x) {
-           my $mod1 = defined($1) ? $1 : "";
-           if (defined($2)) { $mod1 .= $2; }
-           my $type = $3;
-           my $ptr1 = $4;
-           my $mod2 = defined($5) ? $5 : "";
-           my $ptr2 = $6;
-           my $name = $7;
-           $ptr1 = " " . $ptr1;
-           my $array = defined($8) ? $8 : "";
-           my $bits =  defined($9) ? " $9" : "";
-           my $ptype = defined $typefunc ? $typefunc->($type) : $type;
-           
-           # FIXME:
-           # As a hack, we allow the "name" to be of the form
-           # "a, b, c". This isn't the correct C syntax, but
-           # at least we get "gint16 x, y" right. Such constructs
-           # should really be completely removed from the source.
-           # Or we should really try to understand the C syntax
-           # here...
-           
-           my @names = split /\s*,\s*/, $name;
-           for my $n (@names) {
-               push @result, $n;
-               if (defined $namefunc) {
-                   $n = $namefunc->($n);
-               }
-               push @result, "$mod1$ptype$ptr1$mod2$ptr2$n$array$bits";
-           }
-           
-        # Try to match structure members which are functions
-       } elsif ($line =~ m/^
-                (const\s+|unsigned\s+)*(struct\s+)?  # mod1 
-                (\w+)\s*                             # type
-                (\**)\s*                             # ptr1
-                (const\s+)?                          # mod2
-                \(\s*\*\s*(\w+)\s*\)\s*              # name
-                \(([^)]*)\)\s*                       # func_params
-                           $/x) {
-
-           my $mod1 = defined($1) ? $1 : "";
-           if (defined($2)) { $mod1 .= $2; }
-           my $type = $3;
-           my $ptr1 = $4;
-           my $mod2 = defined($5) ? $5 : "";
-           my $name = $6;
-           my $func_params = $7;
-           my $ptype = defined $typefunc ? $typefunc->($type) : $type;
-           my $pname = defined $namefunc ? $namefunc->($name) : $name;
-           
-           push @result, $name;
-           push @result, "$mod1$ptype$ptr1$mod2 (*$pname) ($func_params)";
-           
-       } else {
-           warn "Cannot parse structure field $line";
-       }
-    }
-    
-    return @result;
-}
-
-
-#############################################################################
-# Function    : ParseEnumDeclaration
-# Description : This function takes a enumeration declaration and
-#               breaks it into individual enum member declarations.
-# Arguments   : $declaration - the declaration to parse
-#############################################################################
-
-sub ParseEnumDeclaration {
-    my ($declaration, $is_object) = @_;
-
-    # Remove comments;
-    $declaration =~ s@/\*([^*]+|\*(?!/))*\*/@ @g;
-
-    my @result = ();
-
-    if ($declaration =~ /^\s*$/) {
-       return @result;
-    }
-
-    # Remove parenthesized expressions (in macros like GTK_BLAH = BLAH(1,3))
-    # to avoid getting confused by commas they might contain. This
-    # doesn't handle nested parentheses correctly.
-
-    $declaration =~ s/\([^)]*\)//g;
-
-    # Prime match after "typedef enum {" declaration
-    if (!scalar($declaration =~ m/typedef\s+enum\s*\{/msg)) {
-       die "Enum declaration '$declaration' does not begin with typedef enum {\n";
-    }
-
-    # Treat lines in sequence.
-    while ($declaration =~ m/\s*([^,\}]+)([,\}])/msg) {
-       my $line = $1;
-       my $terminator = $2;
-
-       if ($line =~ m/^(\w+)\s*(=.*)?$/msg) {
-           push @result, $1;
-           
-       # Special case for GIOCondition, where the values are specified by
-       # macros which expand to include the equal sign like '=1'.
-       } elsif ($line =~ m/^(\w+)\s*GLIB_SYSDEF_POLL/msg) {
-           push @result, $1;
-           
-       # Special case include of <gdk/gdkcursors.h>, just ignore it
-       } elsif ($line =~ m/^#include/) {
-           last;
-
-       } else {
-           warn "Cannot parse enumeration member $line";
-       }
-
-       last if $terminator eq '}';
-    }
-    
-    return @result;
-}
diff --git a/docs/plugins/gstdoc-scanobj b/docs/plugins/gstdoc-scanobj
deleted file mode 100755 (executable)
index a60e7c9..0000000
+++ /dev/null
@@ -1,873 +0,0 @@
-#!/usr/bin/perl -w
-#
-# gtk-doc - GTK DocBook documentation generator.
-# Copyright (C) 1998  Damon Chaplin
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program 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 General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-
-#
-# This gets information about object heirarchies and signals
-# by compiling a small C program. CFLAGS and LDFLAGS must be
-# set appropriately before running this script.
-#
-# NOTE: the lookup_signal_srg_names() function contains the argument names of
-#       standard GTK signal handlers. This may need to be updated for new
-#       GTK signals or Gnome widget signals.
-
-use Getopt::Long;
-
-# Options
-
-# name of documentation module
-my $MODULE;
-my $OUTPUT_DIR;
-
-%optctl = (module => \$MODULE,
-          types => \$TYPES_FILE,
-          nogtkinit => \$NO_GTK_INIT);
-          
-GetOptions(\%optctl, "module=s", "types:s", "nogtkinit");
-
-$TYPES_FILE = $TYPES_FILE ? $TYPES_FILE : "$MODULE.types";
-
-open TYPES, $TYPES_FILE || die "Cannot open $TYPES_FILE: $!\n";
-open OUTPUT, ">$MODULE-scan.c" || die "Cannot open $MODULE-scan.c: $!\n";
-
-# write a C program to scan the types
-
-$includes = "";
-@types = ();
-
-for (<TYPES>) {
-    if (/^#include/) {
-       $includes .= $_;
-    } elsif (/^%/) {
-       next;
-    } elsif (/^\s*$/) {
-       next;
-    } else {
-       chomp;
-       push @types, $_;
-    }
-}
-
-$ntypes = @types + 1;
-
-print OUTPUT <<EOT;
-#include <string.h>
-#include <stdio.h>
-
-$includes
-GtkType object_types[$ntypes];
-GstElement *elements[$ntypes];
-
-gint _typenr = 0;
-
-gboolean 
-get_plugins ()
-{
-    gint i = 0;
-EOT
-
-for (@types) {
-    print OUTPUT "    gst_plugin_load(\"$_\");\n";
-    print OUTPUT "    elements[i] = gst_elementfactory_make(\"$_\", \"dummy\");\n";
-    print OUTPUT "    object_types[i] = GTK_OBJECT_TYPE(GTK_OBJECT(elements[i]));\n";
-    print OUTPUT "    i++; \n";
-}
-    print OUTPUT "    object_types[i] = 0;\n";
-
-print OUTPUT <<EOT;
-    return TRUE;
-}
-
-/*
- * This uses GTK type functions to output signal prototypes and the widget
- * hierarchy.
- */
-
-/* The output files */
-gchar *signals_filename = "$MODULE.signals";
-gchar *hierarchy_filename = "$MODULE.hierarchy";
-gchar *args_filename = "$MODULE.args";
-gchar *pads_filename = "$MODULE.pads";
-
-
-static void output_signals ();
-static void output_widget_signals (FILE *fp,
-                                  GtkType object_type);
-static void output_widget_signal (FILE *fp,
-                                 GtkType object_type,
-                                 gchar *object_class_name,
-                                 guint signal_id);
-static gchar * get_type_name (GtkType type,
-                             gboolean * is_pointer);
-static gchar * get_gdk_event (const gchar * signal_name);
-static gchar ** lookup_signal_arg_names (gchar * type,
-                                        const gchar * signal_name);
-
-static void output_widget_hierarchy ();
-static void output_hierarchy (FILE *fp,
-                             GtkType type,
-                             gint level);
-
-static void output_args ();
-static void output_widget_args (FILE *fp, GtkType object_type);
-
-static void output_pads ();
-static void output_widget_pads (FILE *fp, GstElement *element);
-
-int
-main (int argc, char *argv[])
-{
-EOT
-
-  if ($NO_GTK_INIT) {
-    print OUTPUT <<EOT;
-  gtk_type_init ();
-EOT
-  } else {
-    print OUTPUT <<EOT;
-  gtk_init (&argc, &argv);
-EOT
-  }
-
-print OUTPUT <<EOT;
-  gst_init (&argc, &argv);
-  get_plugins();
-
-  output_widget_hierarchy ();
-  output_signals ();
-  output_args ();
-  output_pads ();
-
-  return 0;
-}
-
-
-static void
-output_signals ()
-{
-  FILE *fp;
-  gint i;
-
-  fp = fopen (signals_filename, "w");
-  if (fp == NULL)
-    {
-      g_warning ("Couldn't open output file: %s", signals_filename);
-      return;
-    }
-
-  for (i = 0; object_types[i]; i++)
-    output_widget_signals (fp, object_types[i]);
-
-  fclose (fp);
-}
-
-
-/* This outputs all the signals of one widget. */
-static void
-output_widget_signals (FILE *fp, GtkType object_type)
-{
-  GtkObjectClass *class;
-  gchar *object_class_name;
-  guint sig;
-
-  class = gtk_type_class (object_type);
-  if (!class || class->nsignals == 0)
-    return;
-
-  object_class_name = gtk_type_name (object_type);
-
-  for (sig = 0; sig < class->nsignals; sig++)
-    {
-      if (!class->signals[sig])
-        {
-          /*g_print ("Signal slot [%u] is empty\n", sig);*/
-          continue;
-        }
-
-      output_widget_signal (fp, object_type, object_class_name,
-                           class->signals[sig]);
-    }
-}
-
-
-/* This outputs one signal. */
-static void
-output_widget_signal (FILE *fp,
-                     GtkType object_type,
-                     gchar *object_name,
-                     guint signal_id)
-{
-  GtkSignalQuery *query_info;
-  gchar *ret_type, *pos, *type_name, *arg_name, *object_arg, *object_arg_start;
-  gboolean is_pointer;
-  gchar ret_type_buffer[1024], buffer[1024];
-  gint i, param;
-  gchar **arg_names;
-  gint param_num, widget_num, event_num, callback_num;
-  gint *arg_num;
-  gchar signal_name[128];
-
-
-  /*  g_print ("Object: %s Type: %i Signal: %u\n", object_name, object_type,
-      signal_id);*/
-
-  param_num = 1;
-  widget_num = event_num = callback_num = 0;
-
-  query_info = gtk_signal_query (signal_id);
-  if (query_info == NULL)
-    {
-      g_warning ("Couldn't query signal");
-      return;
-    }
-
-  /* Output the return type and function name. */
-  ret_type = get_type_name (query_info->return_val, &is_pointer);
-  sprintf (ret_type_buffer, "%s%s", ret_type, is_pointer ? "*" : "");
-
-  /* Output the signal object type and the argument name. We assume the
-     type is a pointer - I think that is OK. We remove "Gtk" or "Gnome" and
-     convert to lower case for the argument name. */
-  pos = buffer;
-  sprintf (pos, "%s ", object_name);
-  pos += strlen (pos);
-
-  if (!strncmp (object_name, "Gtk", 3))
-      object_arg = object_name + 3;
-  else if (!strncmp (object_name, "Gnome", 5))
-      object_arg = object_name + 5;
-  else
-      object_arg = object_name;
-
-  object_arg_start = pos;
-  sprintf (pos, "*%s\n", object_arg);
-  pos += strlen (pos);
-  g_strdown (object_arg_start);
-  if (!strcmp (object_arg_start, "widget"))
-    widget_num++;
-  
-  /* Convert signal name to use underscores rather than dashes '-'. */
-  strcpy (signal_name, query_info->signal_name);
-  for (i = 0; signal_name[i]; i++)
-    {
-      if (signal_name[i] == '-')
-       signal_name[i] = '_';
-    }
-
-  /* Output the signal parameters. */
-  arg_names = lookup_signal_arg_names (object_name, signal_name);
-
-  for (param = 0; param < query_info->nparams; param++)
-    {
-      if (arg_names)
-       {
-         sprintf (pos, "%s\n", arg_names[param]);
-         pos += strlen (pos);
-       }
-      else
-       {
-         type_name = get_type_name (query_info->params[param], &is_pointer);
-
-         /* Most arguments to the callback are called "arg1", "arg2", etc.
-            GdkWidgets are called "widget", "widget2", ...
-            GdkEvents are called "event", "event2", ...
-            GtkCallbacks are called "callback", "callback2", ... */
-         if (!strcmp (type_name, "GtkWidget"))
-           {
-             arg_name = "widget";
-             arg_num = &widget_num;
-           }
-         else if (!strcmp (type_name, "GdkEvent"))
-           {
-             type_name = get_gdk_event (signal_name);
-             arg_name = "event";
-             arg_num = &event_num;
-             is_pointer = TRUE;
-           }
-         else if (!strcmp (type_name, "GtkCallback")
-                  || !strcmp (type_name, "GtkCCallback"))
-           {
-             arg_name = "callback";
-             arg_num = &callback_num;
-           }
-         else
-           {
-             arg_name = "arg";
-             arg_num = &param_num;
-           }
-         sprintf (pos, "%s ", type_name);
-         pos += strlen (pos);
-
-         if (!arg_num || *arg_num == 0)
-           sprintf (pos, "%s%s\n", is_pointer ? "*" : " ", arg_name);
-         else
-           sprintf (pos, "%s%s%i\n", is_pointer ? "*" : " ", arg_name,
-                    *arg_num);
-             pos += strlen (pos);
-             
-             if (arg_num)
-               *arg_num += 1;
-       }
-    }
-  
-  fprintf (fp,
-          "<SIGNAL>\n<NAME>%s::%s</NAME>\n<RETURNS>%s</RETURNS>\n%s</SIGNAL>\n\n",
-          object_name, query_info->signal_name, ret_type_buffer, buffer);
-  g_free (query_info);
-}
-
-
-static gchar *
-get_type_name (GtkType type, gboolean * is_pointer)
-{
-  static gchar *GbTypeNames[] =
-  {
-    "char", "gchar",
-    "bool", "gboolean",
-    "int", "gint",
-    "uint", "guint",
-    "long", "glong",
-    "ulong", "gulong",
-    "float", "gfloat",
-    "double", "gdouble",
-    "string", "gchar",
-    "enum", "gint",
-    "flags", "gint",
-    "boxed", "gpointer",
-    "foreign", "gpointer",
-    "callback", "GtkCallback", /* ?? */
-    "args", "gpointer",
-
-    "pointer", "gpointer",
-    "signal", "gpointer",
-    "c_callback", "GtkCallback",       /* ?? */
-
-    NULL
-  };
-
-  GtkType parent_type;
-  gchar *type_name, *parent_type_name;
-  gint i;
-
-  *is_pointer = FALSE;
-  type_name = gtk_type_name (type);
-  for (i = 0; GbTypeNames[i]; i += 2)
-    {
-      if (!strcmp (type_name, GbTypeNames[i]))
-       {
-         if (!strcmp (type_name, "string"))
-           *is_pointer = TRUE;
-         return GbTypeNames[i + 1];
-       }
-    }
-
-  for (;;)
-    {
-      parent_type = gtk_type_parent (type);
-      if (parent_type == 0)
-       break;
-      type = parent_type;
-    }
-  parent_type_name = gtk_type_name (type);
-  /*g_print ("Parent type name: %s\n", parent_type_name);*/
-  if (!strcmp (parent_type_name, "GtkObject")
-      || !strcmp (parent_type_name, "boxed")
-      || !strcmp (parent_type_name, "GtkBoxed"))
-    *is_pointer = TRUE;
-
-  return type_name;
-}
-
-
-static gchar *
-get_gdk_event (const gchar * signal_name)
-{
-  static gchar *GbGDKEvents[] =
-  {
-    "button_press_event", "GdkEventButton",
-    "button_release_event", "GdkEventButton",
-    "motion_notify_event", "GdkEventMotion",
-    "delete_event", "GdkEvent",
-    "destroy_event", "GdkEvent",
-    "expose_event", "GdkEventExpose",
-    "key_press_event", "GdkEventKey",
-    "key_release_event", "GdkEventKey",
-    "enter_notify_event", "GdkEventCrossing",
-    "leave_notify_event", "GdkEventCrossing",
-    "configure_event", "GdkEventConfigure",
-    "focus_in_event", "GdkEventFocus",
-    "focus_out_event", "GdkEventFocus",
-    "map_event", "GdkEvent",
-    "unmap_event", "GdkEvent",
-    "property_notify_event", "GdkEventProperty",
-    "selection_clear_event", "GdkEventSelection",
-    "selection_request_event", "GdkEventSelection",
-    "selection_notify_event", "GdkEventSelection",
-    "proximity_in_event", "GdkEventProximity",
-    "proximity_out_event", "GdkEventProximity",
-    "drag_begin_event", "GdkEventDragBegin",
-    "drag_request_event", "GdkEventDragRequest",
-    "drag_end_event", "GdkEventDragRequest",
-    "drop_enter_event", "GdkEventDropEnter",
-    "drop_leave_event", "GdkEventDropLeave",
-    "drop_data_available_event", "GdkEventDropDataAvailable",
-    "other_event", "GdkEventOther",
-    "client_event", "GdkEventClient",
-    "no_expose_event", "GdkEventNoExpose",
-    NULL
-  };
-
-  gint i;
-
-  for (i = 0; GbGDKEvents[i]; i += 2)
-    {
-      if (!strcmp (signal_name, GbGDKEvents[i]))
-       return GbGDKEvents[i + 1];
-    }
-  return "GdkEvent";
-}
-
-
-/* This returns argument names to use for some known GTK signals.
-    It is passed a widget name, e.g. 'GtkCList' and a signal name, e.g.
-    'select_row' and it returns a pointer to an array of argument types and
-    names. */
-static gchar **
-lookup_signal_arg_names (gchar * type, const gchar * signal_name)
-{
-  /* Each arg array starts with the object type name and the signal name,
-     and then signal arguments follow. */
-  static gchar *GbArgTable[][16] =
-  {
-    {"GtkCList", "select_row",
-     "gint             row",
-     "gint             column",
-     "GdkEventButton  *event"},
-    {"GtkCList", "unselect_row",
-     "gint             row",
-     "gint             column",
-     "GdkEventButton  *event"},
-    {"GtkCList", "click_column",
-     "gint             column"},
-
-    {"GtkCList", "resize_column",
-     "gint             column",
-     "gint             width"},
-
-    {"GtkCList", "extend_selection",
-     "GtkScrollType    scroll_type",
-     "gfloat           position",
-     "gboolean         auto_start_selection"},
-    {"GtkCList", "scroll_vertical",
-     "GtkScrollType    scroll_type",
-     "gfloat           position"},
-    {"GtkCList", "scroll_horizontal",
-     "GtkScrollType    scroll_type",
-     "gfloat           position"},
-    {"GtkContainer", "focus",
-     "GtkDirectionType direction"},
-    {"GtkCTree", "tree_select_row",
-     "GList           *node",
-     "gint             column"},
-    {"GtkCTree", "tree_unselect_row",
-     "GList           *node",
-     "gint             column"},
-
-    {"GtkCTree", "tree_expand",
-     "GList           *node"},
-    {"GtkCTree", "tree_collapse",
-     "GList           *node"},
-    {"GtkCTree", "tree_move",
-     "GList           *node",
-     "GList           *new_parent",
-     "GList           *new_sibling"},
-    {"GtkCTree", "change_focus_row_expansion",
-     "GtkCTreeExpansionType expansion"},
-
-    {"GtkEditable", "insert_text",
-     "gchar           *new_text",
-     "gint             new_text_length",
-     "gint            *position"},
-    {"GtkEditable", "delete_text",
-     "gint             start_pos",
-     "gint             end_pos"},
-    {"GtkEditable", "set_editable",
-     "gboolean         is_editable"},
-    {"GtkEditable", "move_cursor",
-     "gint             x",
-     "gint             y"},
-    {"GtkEditable", "move_word",
-     "gint             num_words"},
-    {"GtkEditable", "move_page",
-     "gint             x",
-     "gint             y"},
-    {"GtkEditable", "move_to_row",
-     "gint             row"},
-    {"GtkEditable", "move_to_column",
-     "gint             column"},
-
-    {"GtkEditable", "kill_char",
-     "gint             direction"},
-    {"GtkEditable", "kill_word",
-     "gint             direction"},
-    {"GtkEditable", "kill_line",
-     "gint             direction"},
-
-
-    {"GtkInputDialog", "enable_device",
-     "gint             deviceid"},
-    {"GtkInputDialog", "disable_device",
-     "gint             deviceid"},
-
-    {"GtkListItem", "extend_selection",
-     "GtkScrollType    scroll_type",
-     "gfloat           position",
-     "gboolean         auto_start_selection"},
-    {"GtkListItem", "scroll_vertical",
-     "GtkScrollType    scroll_type",
-     "gfloat           position"},
-    {"GtkListItem", "scroll_horizontal",
-     "GtkScrollType    scroll_type",
-     "gfloat           position"},
-
-    {"GtkMenuShell", "move_current",
-     "GtkMenuDirectionType direction"},
-    {"GtkMenuShell", "activate_current",
-     "gboolean         force_hide"},
-
-
-    {"GtkNotebook", "switch_page",
-     "GtkNotebookPage *page",
-     "gint             page_num"},
-    {"GtkStatusbar", "text_pushed",
-     "guint            context_id",
-     "gchar           *text"},
-    {"GtkStatusbar", "text_popped",
-     "guint            context_id",
-     "gchar           *text"},
-    {"GtkTipsQuery", "widget_entered",
-     "GtkWidget       *widget",
-     "gchar           *tip_text",
-     "gchar           *tip_private"},
-    {"GtkTipsQuery", "widget_selected",
-     "GtkWidget       *widget",
-     "gchar           *tip_text",
-     "gchar           *tip_private",
-     "GdkEventButton  *event"},
-    {"GtkToolbar", "orientation_changed",
-     "GtkOrientation   orientation"},
-    {"GtkToolbar", "style_changed",
-     "GtkToolbarStyle  style"},
-    {"GtkWidget", "draw",
-     "GdkRectangle    *area"},
-    {"GtkWidget", "size_request",
-     "GtkRequisition  *requisition"},
-    {"GtkWidget", "size_allocate",
-     "GtkAllocation   *allocation"},
-    {"GtkWidget", "state_changed",
-     "GtkStateType     state"},
-    {"GtkWidget", "style_set",
-     "GtkStyle        *previous_style"},
-
-    {"GtkWidget", "install_accelerator",
-     "gchar           *signal_name",
-     "gchar            key",
-     "gint             modifiers"},
-
-    {"GtkWidget", "add_accelerator",
-     "guint            accel_signal_id",
-     "GtkAccelGroup   *accel_group",
-     "guint            accel_key",
-     "GdkModifierType  accel_mods",
-     "GtkAccelFlags    accel_flags"},
-
-    {"GtkWidget", "parent_set",
-     "GtkObject       *old_parent"},
-
-    {"GtkWidget", "remove_accelerator",
-     "GtkAccelGroup   *accel_group",
-     "guint            accel_key",
-     "GdkModifierType  accel_mods"},
-    {"GtkWidget", "debug_msg",
-     "gchar           *message"},
-    {"GtkWindow", "move_resize",
-     "gint            *x",
-     "gint            *y",
-     "gint             width",
-     "gint             height"},
-    {"GtkWindow", "set_focus",
-     "GtkWidget       *widget"},
-
-    {"GtkWidget", "selection_get",
-     "GtkSelectionData *data",
-     "guint            info",
-     "guint            time"},
-    {"GtkWidget", "selection_received",
-     "GtkSelectionData *data",
-     "guint            time"},
-
-    {"GtkWidget", "drag_begin",
-     "GdkDragContext  *drag_context"},
-    {"GtkWidget", "drag_end",
-     "GdkDragContext  *drag_context"},
-    {"GtkWidget", "drag_data_delete",
-     "GdkDragContext  *drag_context"},
-    {"GtkWidget", "drag_leave",
-     "GdkDragContext  *drag_context",
-     "guint            time"},
-    {"GtkWidget", "drag_motion",
-     "GdkDragContext  *drag_context",
-     "gint             x",
-     "gint             y",
-     "guint            time"},
-    {"GtkWidget", "drag_drop",
-     "GdkDragContext  *drag_context",
-     "gint             x",
-     "gint             y",
-     "guint            time"},
-    {"GtkWidget", "drag_data_get",
-     "GdkDragContext  *drag_context",
-     "GtkSelectionData *data",
-     "guint            info",
-     "guint            time"},
-    {"GtkWidget", "drag_data_received",
-     "GdkDragContext  *drag_context",
-     "gint             x",
-     "gint             y",
-     "GtkSelectionData *data",
-     "guint            info",
-     "guint            time"},
-
-    {NULL}
-  };
-
-  gint i;
-
-  for (i = 0; GbArgTable[i][0]; i++)
-    {
-      if (!strcmp (type, GbArgTable[i][0])
-         && !strcmp (signal_name, GbArgTable[i][1]))
-       return &GbArgTable[i][2];
-    }
-  return NULL;
-}
-
-
-/* This outputs the hierarchy of all widgets which have been initialized,
-   i.e. by calling their XXX_get_type() initialization function. */
-static void
-output_widget_hierarchy ()
-{
-  FILE *fp;
-
-  fp = fopen (hierarchy_filename, "w");
-  if (fp == NULL)
-    {
-      g_warning ("Couldn't open output file: %s", hierarchy_filename);
-      return;
-    }
-  output_hierarchy (fp, GTK_TYPE_OBJECT, 0);
-  fclose (fp);
-}
-
-
-/* This is called recursively to output the hierarchy of a widget. */
-static void
-output_hierarchy (FILE *fp,
-                 GtkType type,
-                 gint level)
-{
-  GList *list;
-  guint i;
-
-  if (!type)
-    return;
-
-  for (i = 0; i < level; i++)
-    fprintf (fp, "  ");
-  fprintf (fp, gtk_type_name (type));
-  fprintf (fp, "\n");
-
-  list = gtk_type_children_types (type);
-
-  while (list)
-    {
-      GtkType child = (GtkType) list->data;
-      output_hierarchy (fp, child, level + 1);
-      list = list->next;
-    }
-}
-
-
-static void
-output_args ()
-{
-  FILE *fp;
-  gint i;
-
-  fp = fopen (args_filename, "w");
-  if (fp == NULL)
-    {
-      g_warning ("Couldn't open output file: %s", args_filename);
-      return;
-    }
-
-  for (i = 0; object_types[i]; i++)
-    output_widget_args (fp, object_types[i]);
-
-  fclose (fp);
-}
-
-
-static void
-output_widget_args (FILE *fp, GtkType object_type)
-{
-  GtkObjectClass *class;
-  gchar *object_class_name;
-  GtkArg *args;
-  guint32 *arg_flags;
-  guint n_args;
-  gint arg;
-  gchar flags[16], *pos;
-
-  class = gtk_type_class (object_type);
-  if (!class)
-    return;
-
-  object_class_name = gtk_type_name (object_type);
-
-  args = gtk_object_query_args (class->type, &arg_flags, &n_args);
-
-  for (arg = 0; arg < n_args; arg++)
-    {
-      pos = flags;
-      /* We use one-character flags for simplicity. */
-      if (arg_flags[arg] & GTK_ARG_READABLE)
-       *pos++ = 'r';
-      if (arg_flags[arg] & GTK_ARG_WRITABLE)
-       *pos++ = 'w';
-      if (arg_flags[arg] & GTK_ARG_CONSTRUCT)
-       *pos++ = 'x';
-      if (arg_flags[arg] & GTK_ARG_CONSTRUCT_ONLY)
-       *pos++ = 'X';
-      if (arg_flags[arg] & GTK_ARG_CHILD_ARG)
-       *pos++ = 'c';
-      *pos = '\0';
-
-      fprintf (fp, "<ARG>\n<NAME>%s</NAME>\n<TYPE>%s</TYPE>\n<FLAGS>%s</FLAGS>\n",
-              args[arg].name, gtk_type_name (args[arg].type), flags);
-
-      if (GTK_FUNDAMENTAL_TYPE(args[arg].type) == GTK_TYPE_ENUM) {
-        GtkEnumValue *values;
-       gint i=0;
-
-       values = gtk_type_enum_get_values(args[arg].type);
-
-       while (values[i].value_name) {
-          fprintf (fp, "<ENUM>\n<VALUE>%d</VALUE>\n<NICK>%s</NICK>\n</ENUM>\n",
-               values[i].value, values[i].value_nick);
-         i++;
-       }
-      }
-      
-      fprintf(fp, "</ARG>\n\n");
-    }
-
-  g_free (args);
-  g_free (arg_flags);
-}
-
-
-static void
-output_pads ()
-{
-  FILE *fp;
-  gint i;
-
-  fp = fopen (pads_filename, "w");
-  if (fp == NULL)
-    {
-      g_warning ("Couldn't open output file: %s", pads_filename);
-      return;
-    }
-
-  for (i = 0; elements[i]; i++)
-    output_widget_pads (fp, elements[i]);
-
-  fclose (fp);
-}
-
-static void
-output_widget_pads (FILE *fp, GstElement *element)
-{
-  GtkObjectClass *class;
-  GstElementFactory *factory;
-  GList *pads;
-
-  class = GTK_OBJECT(element)->klass;
-  if (!class || !GST_IS_ELEMENT_CLASS(class))
-    return;
-
-  pads = gst_element_get_pad_list(element);
-
-  factory = GST_ELEMENT_CLASS(class)->elementfactory;
-
-  if (!factory)
-    return;
-
-  while (pads) {
-    GstPad *pad = (GstPad *)pads->data;
-    GstType *type;
-
-    //type = gst_type_find_by_id(pad->type);
-    type = gst_type_find_by_id(1);
-
-    fprintf (fp, "<PAD>\n<NAME>%s::%s</NAME>\n",
-              gtk_type_name(factory->type), gst_object_get_name (GST_OBJECT (pad)));
-    
-    if (type) {
-      fprintf(fp, "<MIME>%s</MIME>\n", type->mime);
-      if (type->exts)
-        fprintf(fp, "<EXTS>%s</EXTS>\n", type->exts);
-    }
-
-    fprintf(fp, "</PAD>\n\n");
-
-    pads = g_list_next(pads);
-  }
-}
-
-EOT
-
-close OUTPUT;
-
-# Compile and run our file
-
-$CC = $ENV{CC} ? $ENV{CC} : "gcc";
-$LD = $ENV{LD} ? $ENV{LD} : $CC;
-$CFLAGS = $ENV{CFLAGS} ? $ENV{CFLAGS} : "";
-$LDFLAGS = $ENV{LDFLAGS} ? $ENV{LDFLAGS} : "";
-
-$command = "$CC $CFLAGS -c -o $MODULE-scan.o $MODULE-scan.c && $LD -o $MODULE-scan $MODULE-scan.o $LDFLAGS";
-
-system($command) == 0 or die "Compilation of scanner failed\n";
-
-system("./$MODULE-scan") == 0 or die "Scan failed\n";
-
-unlink "./$MODULE-scan.c", "./$MODULE-scan", 
diff --git a/docs/plugins/gstreamer-plugins-docs.sgml b/docs/plugins/gstreamer-plugins-docs.sgml
deleted file mode 100644 (file)
index 13267f9..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-<!doctype book PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
-
-<!entity GstParseAu SYSTEM "sgml/gstparseau.sgml">
-<!entity Audioscale SYSTEM "sgml/audioscale.sgml">
-<!entity GstAviEncoder SYSTEM "sgml/gstaviencoder.sgml">
-<!entity GstParseAvi SYSTEM "sgml/gstparseavi.sgml">
-<!entity GstWinDec SYSTEM "sgml/gstwindec.sgml">
-<!entity GstWinEnc SYSTEM "sgml/gstwinenc.sgml">
-<!entity GstV4lSrc SYSTEM "sgml/gstv4lsrc.sgml">
-<!entity GstStereo SYSTEM "sgml/stereo.sgml">
-<!entity GstVolume SYSTEM "sgml/volume.sgml">
-<!entity GstMedian SYSTEM "sgml/median.sgml">
-<!entity GstSmooth SYSTEM "sgml/smooth.sgml">
-<!entity GstJpegDec SYSTEM "sgml/gstjpegdec.sgml">
-<!entity GstJpegEnc SYSTEM "sgml/gstjpegenc.sgml">
-<!entity GstMpg123 SYSTEM "sgml/gstmpg123.sgml">
-<!entity Mp3Parse SYSTEM "sgml/mp3parse.sgml">
-<!entity GstMpegplay SYSTEM "sgml/gstmpeg_play.sgml">
-<!entity GstMpegAudio SYSTEM "sgml/gstmpegaudio.sgml">
-<!entity GstMpeg1Parse SYSTEM "sgml/mpeg1parse.sgml">
-<!entity SystemEncode SYSTEM "sgml/system_encode.sgml">
-<!entity Mp1VideoParse SYSTEM "sgml/mp1videoparse.sgml">
-<!entity Ac3Dec SYSTEM "sgml/ac3dec.sgml">
-<!entity Ac3Parse SYSTEM "sgml/ac3parse.sgml">
-<!entity GstMpeg2enc SYSTEM "sgml/gstmpeg2enc.sgml">
-<!entity Mpeg2Parse SYSTEM "sgml/mpeg2parse.sgml">
-<!entity Mpeg2Subt SYSTEM "sgml/mpeg2subt.sgml">
-<!entity Mpeg2Play SYSTEM "sgml/gstmpeg2play.sgml">
-<!entity Mp2VideoParse SYSTEM "sgml/mp2videoparse.sgml">
-<!entity RTJpegDec SYSTEM "sgml/rtjpegdec.sgml">
-<!entity RTJpegEnc SYSTEM "sgml/rtjpegenc.sgml">
-<!entity VCDSrc SYSTEM "sgml/vcdsrc.sgml">
-<!entity Videoscale SYSTEM "sgml/videoscale.sgml">
-<!entity VideoSink SYSTEM "sgml/videosink.sgml">
-<!entity GstSmoothWave SYSTEM "sgml/smoothwave.sgml">
-<!entity GstSpectrum SYSTEM "sgml/gstspectrum.sgml">
-<!entity GstSynaesthesia SYSTEM "sgml/synaesthesia.sgml">
-<!entity GstVuMeter SYSTEM "sgml/vumeter.sgml">
-<!entity VorbisDec SYSTEM "sgml/vorbisdec.sgml">
-<!entity VorbisEnc SYSTEM "sgml/vorbisenc.sgml">
-<!entity GstParseWav SYSTEM "sgml/gstparsewav.sgml">
-
-<!entity gstreamer-tree-index SYSTEM "sgml/tree_index.sgml">
-]>
-
-
-<book>
-  <bookinfo>
-    <title>GStreamer Library Reference Manual (Plugins)</title>
-  </bookinfo>
-
-  <chapter id="plugins">
-    <title>GStreamer Standard Plugins</title>
-
-    <para>
-      The following code example shows you how to create a GstDiskSrc element.
-    </para>
-
-      &GstParseAu;
-      &Audioscale;
-
-      &GstAviEncoder;
-      &GstParseAvi;
-      &GstWinDec;
-      &GstWinEnc;
-      &GstParseWav;
-
-      &GstV4lSrc;
-
-      &GstStereo;
-      &GstVolume;
-
-      &GstMedian;
-      &GstSmooth;
-
-      &GstJpegDec;
-      &GstJpegEnc;
-
-      &GstMpg123;
-      &Mp3Parse;
-      &GstMpegplay;
-      &GstMpegAudio;
-      &GstMpeg1Parse;
-      &SystemEncode;
-      &Mp1VideoParse;
-
-      &Ac3Dec;
-      &Ac3Parse;
-      &GstMpeg2enc;
-      &Mpeg2Parse;
-      &Mpeg2Subt;
-      &Mpeg2Play;
-      &Mp2VideoParse;
-
-      &RTJpegDec;
-      &RTJpegEnc;
-
-      &VCDSrc;
-
-      &Videoscale;
-      &VideoSink;
-
-      &GstSmoothWave;
-      &GstSpectrum;
-      &GstSynaesthesia;
-      &GstVuMeter;
-
-      &VorbisDec;
-      &VorbisEnc;
-  </chapter>
-
-  <chapter id="gst-index">
-    <title>Index</title>
-
-    <sect1>
-      <title>Object Hierarchy</title>
-      &gstreamer-tree-index;
-    </sect1>
-  </chapter>
-</book>
diff --git a/docs/plugins/gstreamer-plugins-sections.txt b/docs/plugins/gstreamer-plugins-sections.txt
deleted file mode 100644 (file)
index 699abdd..0000000
+++ /dev/null
@@ -1,333 +0,0 @@
-<SECTION>
-<FILE>example</FILE>
-<TITLE>GstExample</TITLE>
-<SUBSECTION Standard>
-</SECTION>
-
-<SECTION>
-<FILE>gstparseau</FILE>
-<TITLE>GstParseAu</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstaviencoder</FILE>
-<TITLE>GstAviEncoder</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_AVIENCODER
-</SECTION>
-
-<SECTION>
-<FILE>gstparseavi</FILE>
-<TITLE>GstParseAvi</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAVI
-</SECTION>
-
-<SECTION>
-<FILE>gstwindec</FILE>
-<TITLE>GstWinDec</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstwinenc</FILE>
-<TITLE>GstWinEnc</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstwincodec</FILE>
-<TITLE>GstWin</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstv4lsrc</FILE>
-<TITLE>GstV4lSrc</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>cobin</FILE>
-<TITLE>GstCoBin</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>spindentity</FILE>
-<TITLE>GstSpindentity</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>dvdsrc</FILE>
-<TITLE>DVDSrc</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>stereo</FILE>
-<TITLE>GstStereo</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>volume</FILE>
-<TITLE>GstVolume</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstjpeg</FILE>
-<TITLE>GstJpeg</TITLE>
-</SECTION>
-
-<SECTION>
-<FILE>gstjpegdec</FILE>
-<TITLE>GstJpegDec</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstjpegenc</FILE>
-<TITLE>GstJpegEnc</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstmpg123</FILE>
-<TITLE>GstMpg123</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>mp3parse</FILE>
-<TITLE>Mp3Parse</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstxa</FILE>
-<TITLE>GstXa</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstxing</FILE>
-<TITLE>GstXing</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstmpeg_play</FILE>
-<TITLE>GstMpeg_play</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>mpeg1parse</FILE>
-<TITLE>Mpeg1Parse</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstmpeg1encoder</FILE>
-<TITLE>GstMpeg1encoder</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>system_encode</FILE>
-<TITLE>System_Encode</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstmpegaudio</FILE>
-<TITLE>GstMpegAudio</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>mp1videoparse</FILE>
-<TITLE>Mp1VideoParse</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>ac3dec</FILE>
-<TITLE>Ac3Dec</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>ac3parse</FILE>
-<TITLE>Ac3Parse</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>mpeg2parse</FILE>
-<TITLE>Mpeg2Parse</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstmpeg2play</FILE>
-<TITLE>GstMpeg2play</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstmpeg2enc</FILE>
-<TITLE>GstMpeg2enc</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>mpeg2subt</FILE>
-<TITLE>Mpeg2Subt</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>mp2videoparse</FILE>
-<TITLE>Mp2VideoParse</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>rtjpegdec</FILE>
-<TITLE>RTJpegDec</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>rtjpegenc</FILE>
-<TITLE>RTJpegEnc</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>vcdsrc</FILE>
-<TITLE>VCDSrc</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>videosink</FILE>
-<TITLE>GstVideoSink</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_VIDEOSINK
-</SECTION>
-
-<SECTION>
-<FILE>smoothwave</FILE>
-<TITLE>GstSmoothWave</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstspectrum</FILE>
-<TITLE>GstSpectrum</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>synaesthesia</FILE>
-<TITLE>GstSynaesthesia</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>vumeter</FILE>
-<TITLE>GstVuMeter</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>gstparsewav</FILE>
-<TITLE>GstParseWav</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>smooth</FILE>
-<TITLE>GstSmooth</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>median</FILE>
-<TITLE>GstMedian</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>videoscale</FILE>
-<TITLE>Videoscale</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>audioscale</FILE>
-<TITLE>Audioscale</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>vorbisenc</FILE>
-<TITLE>VorbisEnc</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
-<SECTION>
-<FILE>vorbisdec</FILE>
-<TITLE>VorbisDec</TITLE>
-<SUBSECTION Standard>
-GST_TYPE_PARSEAU
-</SECTION>
-
diff --git a/docs/plugins/gstreamer-plugins.types.in b/docs/plugins/gstreamer-plugins.types.in
deleted file mode 100644 (file)
index 864ed44..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-#include <gtk/gtk.h>
-#include <gst/gst.h>
-
-audiosink
-parseau
-audioscale
-parseavi
-aviencoder
-winenc
-windec
-v4lsrc
-stereo
-volume
-median
-smooth
-jpegenc
-jpegdec
-mpg123
-mp3parse
-mpeg_play
-mpeg1parse
-system_encode
-mp1videoparse
-ac3dec
-ac3parse
-mpeg2enc
-mpeg2parse
-mpeg2subt
-mpeg2play
-mp2videoparse
-rtjpegdec
-rtjpegenc
-videoscale
-videosink
-smoothwave
-spectrum
-synaesthesia
-vumeter
-parsewav
diff --git a/docs/plugins/tmpl/ac3dec.sgml b/docs/plugins/tmpl/ac3dec.sgml
deleted file mode 100644 (file)
index e0524e4..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-Ac3Dec
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/ac3parse.sgml b/docs/plugins/tmpl/ac3parse.sgml
deleted file mode 100644 (file)
index 6288ef2..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-Ac3Parse
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/audioscale.sgml b/docs/plugins/tmpl/audioscale.sgml
deleted file mode 100644 (file)
index 69bc3bb..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-Audioscale
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/cobin.sgml b/docs/plugins/tmpl/cobin.sgml
deleted file mode 100644 (file)
index 18fbaf1..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstCoBin
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/dvdsrc.sgml b/docs/plugins/tmpl/dvdsrc.sgml
deleted file mode 100644 (file)
index 829ef68..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-DVDSrc
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/example.sgml b/docs/plugins/tmpl/example.sgml
deleted file mode 100644 (file)
index 7bb0d34..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstExample
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstaviencoder.sgml b/docs/plugins/tmpl/gstaviencoder.sgml
deleted file mode 100644 (file)
index bdfaf64..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstAviEncoder
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstjpeg.sgml b/docs/plugins/tmpl/gstjpeg.sgml
deleted file mode 100644 (file)
index f387761..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstJpeg
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstjpegdec.sgml b/docs/plugins/tmpl/gstjpegdec.sgml
deleted file mode 100644 (file)
index ccbb494..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstJpegDec
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstjpegenc.sgml b/docs/plugins/tmpl/gstjpegenc.sgml
deleted file mode 100644 (file)
index f3b3d06..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstJpegEnc
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstmpeg1encoder.sgml b/docs/plugins/tmpl/gstmpeg1encoder.sgml
deleted file mode 100644 (file)
index 6118976..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstMpeg1encoder
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstmpeg2enc.sgml b/docs/plugins/tmpl/gstmpeg2enc.sgml
deleted file mode 100644 (file)
index 0daebe9..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstMpeg2enc
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstmpeg2play.sgml b/docs/plugins/tmpl/gstmpeg2play.sgml
deleted file mode 100644 (file)
index bfc7025..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstMpeg2play
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstmpeg_play.sgml b/docs/plugins/tmpl/gstmpeg_play.sgml
deleted file mode 100644 (file)
index 5fb1038..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstMpeg_play
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstmpegaudio.sgml b/docs/plugins/tmpl/gstmpegaudio.sgml
deleted file mode 100644 (file)
index a86cf22..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstMpegAudio
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstmpg123.sgml b/docs/plugins/tmpl/gstmpg123.sgml
deleted file mode 100644 (file)
index fe375f7..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstMpg123
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstparseau.sgml b/docs/plugins/tmpl/gstparseau.sgml
deleted file mode 100644 (file)
index d2f22aa..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-parseau
-
-<!-- ##### SECTION Short_Description ##### -->
-Parse an .au file into raw audio
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstparseavi.sgml b/docs/plugins/tmpl/gstparseavi.sgml
deleted file mode 100644 (file)
index 22a8f3e..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstParseAvi
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstparsewav.sgml b/docs/plugins/tmpl/gstparsewav.sgml
deleted file mode 100644 (file)
index 5b536e2..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstParseWav
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstreamer-plugins-unused.sgml b/docs/plugins/tmpl/gstreamer-plugins-unused.sgml
deleted file mode 100644 (file)
index abaae70..0000000
+++ /dev/null
@@ -1,8401 +0,0 @@
-<!-- ##### FUNCTION i_audio_decode_init ##### -->
-<para>
-
-</para>
-
-@h: 
-@framebytes_arg: 
-@reduction_code: 
-@transform_code: 
-@convert_code: 
-@freq_limit: 
-@Returns: 
-
-<!-- ##### MACRO EXT_BUF_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DecodeDCTCoeffFirst ##### -->
-<para>
-
-</para>
-
-@gb: 
-@runval: 
-@levelval: 
-
-<!-- ##### MACRO GetFlag ##### -->
-<para>
-
-</para>
-
-@value: 
-@flag: 
-
-<!-- ##### MACRO MAX_NAME_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DC_QUARTER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MAIN_LEVEL ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION inithuff ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### SECTION ./tmpl/mpeg2dec.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION aiff_write_headers ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Param2: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/param.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION ReadGOPHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO LBOUND ##### -->
-<para>
-
-</para>
-
-@index: 
-@value: 
-
-<!-- ##### SECTION ./tmpl/parse.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/gdkxvimage.sgml:Title ##### -->
-gdkxvimage
-
-
-<!-- ##### MACRO VIDEO_ELEMENTARY_STREAM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DecodeMBAddrInc ##### -->
-<para>
-
-</para>
-
-@gb: 
-@val: 
-
-<!-- ##### FUNCTION Sub2Compensate ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@matrix: 
-@XIob: 
-@YIob: 
-
-<!-- ##### FUNCTION gdk_xvimage_check_xvideo ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/L3.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION create_pack ##### -->
-<para>
-
-</para>
-
-@pack: 
-@SCR: 
-@mux_rate: 
-
-<!-- ##### MACRO WHISPER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION MoveTo ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@hp: 
-@vp: 
-@h: 
-@v: 
-
-<!-- ##### SECTION ./tmpl/decoders.sgml:Title ##### -->
-decoders
-
-
-<!-- ##### MACRO GOP_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MACROBLOCK_MOTION_FORWARD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_RGB16_LE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MONO ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/stream.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO DFLT_EXT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mhead.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MAX_LENGTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MB_BACKWARD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO QUANT_MATRIX_EXTENSION_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION RTjpeg_yuvrgb16 ##### -->
-<para>
-
-</para>
-
-@buf: 
-@rgb: 
-
-<!-- ##### STRUCT Mpeg1Meta ##### -->
-<para>
-
-</para>
-
-@packet_length: 
-@PES_scrambling_control: 
-@PES_priority: 
-@data_alignment_indicator: 
-@copyright: 
-@original_or_copy: 
-@PTS_DTS_flags: 
-@ESCR_flag: 
-@ES_rate_flag: 
-@DSM_trick_mode_flag: 
-@additional_copy_info_flag: 
-@CRC_flag: 
-@PES_extension_flag: 
-@PES_header_data_length: 
-@PTS: 
-@DTS: 
-@ESCR_base: 
-@ESCR_extension: 
-@ES_rate: 
-@trick_mode_control: 
-
-<!-- ##### SECTION ./tmpl/jdw.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO LITTLE_SHORT16 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION audio_decode_init ##### -->
-<para>
-
-</para>
-
-@h: 
-@framebytes_arg: 
-@reduction_code: 
-@transform_code: 
-@convert_code: 
-@freq_limit: 
-@Returns: 
-
-<!-- ##### FUNCTION gst_volume_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### MACRO L_RATE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_mpeg2play_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### FUNCTION gst_example_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION AddCompensate ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@matrix: 
-@XIob: 
-
-<!-- ##### MACRO BOTTOM_FIELD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO P ##### -->
-<para>
-
-</para>
-
-@s: 
-
-<!-- ##### SECTION ./tmpl/bitstream.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_spectrum_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/marker.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DISP_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION output_play ##### -->
-<para>
-
-</para>
-
-@bsi: 
-@samples: 
-@Returns: 
-
-<!-- ##### MACRO WORD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF sint_16 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION RTjpeg_yuvrgb24 ##### -->
-<para>
-
-</para>
-
-@buf: 
-@rgb: 
-
-<!-- ##### MACRO STATUS_VIDEO_TIME_OUT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO PARSE_OK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SEQUENCE_ERROR_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IFF_LONG ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION debug_is_on ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO SYS_HEADER_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mem_free ##### -->
-<para>
-
-</para>
-
-@Param1: 
-
-<!-- ##### MACRO SYSTEM_START_CODE_MAX ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/uncouple.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/globals.sgml:Title ##### -->
-globals
-
-
-<!-- ##### MACRO ERROR_UNRECOVERABLE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/uncouple.sgml:Title ##### -->
-uncouple
-
-
-<!-- ##### MACRO GST_PARSEAVI_REGULAR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/system.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO L_QDFACT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION RTjpeg_yuvrgb32 ##### -->
-<para>
-
-</para>
-
-@buf: 
-@rgb: 
-
-<!-- ##### MACRO GST_PARSEWAV_OTHER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/qtables.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/itype.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO READ_MODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION bitstream_close ##### -->
-<para>
-
-</para>
-
-@bs: 
-
-<!-- ##### TYPEDEF WININT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG VCDSrc:offset ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION MakeEHUFF ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### TYPEDEF IFFT2[FFT_SIZE/2] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO NULL_CHAR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mhead.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/ac3.sgml:Title ##### -->
-ac3
-
-
-<!-- ##### SECTION ./tmpl/mpeg2enc.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/main.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### TYPEDEF coded_block_pattern_entry ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstSmoothWave:height ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GRAB_ATTR_COLOR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_parseavi_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### TYPEDEF sint_32 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstStereo:stereo ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpeg1mux_buffer_new ##### -->
-<para>
-
-</para>
-
-@type: 
-@id: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/musicin.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO PROFILE_422 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG Mpeg1Parse:mux_rate ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MARKER_SCR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO STREAMS_VIDEO ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF DCTtab ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/dither.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_STR_0 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ReadPictureHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### FUNCTION mpg123_bpf_from_header ##### -->
-<para>
-
-</para>
-
-@header: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/video.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SEQUENCE_DISPLAY_EXTENSION_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mrseek ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@distance: 
-
-<!-- ##### SECTION ./tmpl/crc.sgml:Title ##### -->
-crc
-
-
-<!-- ##### FUNCTION mpeg2enc_new_picture ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@inbuf: 
-@size: 
-@encoder_state: 
-@Returns: 
-
-<!-- ##### MACRO PROTO_ARGS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/imdct.sgml:Title ##### -->
-imdct
-
-
-<!-- ##### FUNCTION gst_parsewav_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### MACRO PSC_LENGTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mpeg2enc.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/size.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DVDSRC_BASEOFFSET ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO TIMESTAMPS_NO ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GTK_OVERLAY_IMAGE_TYPE ##### -->
-<para>
-
-</para>
-
-@obj: 
-
-<!-- ##### MACRO SEEK_SET ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_mpeg_play_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION gst_mpegaudio_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION mwtell ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/csize.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO NEW_PICTURE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DefaultDct ##### -->
-<para>
-
-</para>
-
-@vs: 
-@o: 
-@i: 
-
-<!-- ##### FUNCTION gst_parseavi_get_video_srcpad ##### -->
-<para>
-
-</para>
-
-@parseavi: 
-@pad_nr: 
-@strf: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/jdw.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO L_FVAR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION get_number_of_input_bytes ##### -->
-<para>
-
-</para>
-
-@enc: 
-@Returns: 
-
-<!-- ##### MACRO STDC_HEADERS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/gdkxvimage.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ReadMBHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@Returns: 
-
-<!-- ##### FUNCTION JVCHInterpolateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO ERRC_LENGTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstV4lSrc:bright ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO sputc ##### -->
-<para>
-
-</para>
-
-@b: 
-
-<!-- ##### MACRO PI4 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/RTjpeg.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MAX_FLIP_BUFFERS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO HBLKSIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION EncodeAC ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@index: 
-@matrix: 
-
-<!-- ##### FUNCTION rb_end_write ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ReferenceIDct ##### -->
-<para>
-
-</para>
-
-@matrix: 
-@newmatrix: 
-
-<!-- ##### MACRO GOPSC ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstMpeg2play:frames_per_second ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO NEW_DATA ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPEGTABENV ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_vumeter_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### MACRO SC_NONE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpeg2enc_new_encoder ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO FRAME_TYPE_IFRAME ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/acconfig.sgml:Title ##### -->
-acconfig
-
-
-<!-- ##### MACRO sputv ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpg123_get_songlen ##### -->
-<para>
-
-</para>
-
-@fr: 
-@no: 
-@Returns: 
-
-<!-- ##### ARG System_Encode:video ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/output.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ERROR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/system.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mpg123.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/getvlc.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/globals.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MACRO_BLOCK_ESCAPE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SLICE_START_CODE_MIN ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/gdkxvimage.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO TRAP ##### -->
-<para>
-
-</para>
-
-@txt: 
-
-<!-- ##### ARG GstWinDec:bitdepth ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION Help ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### FUNCTION dvdsrc_get_type ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### TYPEDEF UINT16 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_RGB08 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_PARSEAVI_STRL ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO STAT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION MPEGNonIntraQuantize ##### -->
-<para>
-
-</para>
-
-@matrix: 
-@qptr: 
-@qfact: 
-
-<!-- ##### MACRO BufferContents ##### -->
-<para>
-
-</para>
-
-@vs: 
-
-<!-- ##### MACRO DECODE_MAGIC_NUMBER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/util.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### ARG VCDSrc:bytesperread ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION head_info ##### -->
-<para>
-
-</para>
-
-@buf: 
-@n: 
-@h: 
-@Returns: 
-
-<!-- ##### MACRO IN_SEQ_PARSE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SCREAM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mhead.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION MPEGIntraIQuantize ##### -->
-<para>
-
-</para>
-
-@matrix: 
-@qptr: 
-@qfact: 
-
-<!-- ##### MACRO MARKER_DTS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO TIMESTAMPS_PTS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_PARSEAVI_STRH_VIDS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/exponent.sgml:Title ##### -->
-exponent
-
-
-<!-- ##### SECTION ./tmpl/getvlc.sgml:Title ##### -->
-getvlc
-
-
-<!-- ##### TYPEDEF D9[9] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_riff_next_buffer ##### -->
-<para>
-
-</para>
-
-@riff: 
-@buf: 
-@off: 
-@Returns: 
-
-<!-- ##### ARG GstVuMeter:volumeptr_left ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/grab.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/gtkoverlayimage.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MACROBLOCK_LAYER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION SmpFrqIndex ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Returns: 
-
-<!-- ##### MACRO POWERNORM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ReferenceDct ##### -->
-<para>
-
-</para>
-
-@matrix: 
-@newmatrix: 
-
-<!-- ##### MACRO IFF_ID_MPEG ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IFF_ID_FORM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO UBOUND ##### -->
-<para>
-
-</para>
-
-@index: 
-@value: 
-
-<!-- ##### FUNCTION gst_jpeg_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### ARG Ac3Parse:skip ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SYSTEM_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/exponent.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/itype.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mputb ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@b: 
-
-<!-- ##### TYPEDEF VLCtab ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT Mpeg1MuxTimecode ##### -->
-<para>
-
-</para>
-
-@length: 
-@original_length: 
-@frame_type: 
-@PTS: 
-@DTS: 
-
-<!-- ##### MACRO VSSC ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF UINT32 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO sropen ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO EXTENSION_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION EncodeDC ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@coef: 
-@LocalEHuff: 
-
-<!-- ##### MACRO VIDEO_RGB24 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG Audioscale:frequency ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/config.sgml:Title ##### -->
-config
-
-
-<!-- ##### FUNCTION RTjpeg_compress8 ##### -->
-<para>
-
-</para>
-
-@sp: 
-@bp: 
-@Returns: 
-
-<!-- ##### FUNCTION mputv ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@n: 
-@b: 
-
-<!-- ##### MACRO T_X11HIQ ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/vlc.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION gdk_xvimage_destroy ##### -->
-<para>
-
-</para>
-
-@image: 
-
-<!-- ##### MACRO MC_FRAME ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO UNIX ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_YUV422 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DecodeDCTCoeff ##### -->
-<para>
-
-</para>
-
-@gb: 
-@dct_coeff_tbl: 
-@run: 
-@level: 
-
-<!-- ##### MACRO inline ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ReadMBSHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### FUNCTION gst_cobin_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION gst_win_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION bitstream_done ##### -->
-<para>
-
-</para>
-
-@bs: 
-@Returns: 
-
-<!-- ##### MACRO L_MTYPE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION JVCVInterpolateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### ARG GstVolume:active ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION BoundQuantizeMatrix ##### -->
-<para>
-
-</para>
-
-@matrix: 
-
-<!-- ##### MACRO VIDEO_RGB32 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF uint_8 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IFF_ID_AIFF ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION dprintf ##### -->
-<para>
-
-</para>
-
-@fmt: 
-@Varargs: 
-
-<!-- ##### SECTION ./tmpl/dct.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPEG2_SYSHEAD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION js_bound ##### -->
-<para>
-
-</para>
-
-@Varargs: 
-@Varargs: 
-@Returns: 
-
-<!-- ##### MACRO M_DECODER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO EXP_D15 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SYSTEM_START_CODE_MIN ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MS_DOS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/getvlc.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF INT8 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/exponent.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO MACRO_BLOCK_STUFFING ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION DecodeAC ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@index: 
-@matrix: 
-
-<!-- ##### MACRO NUM_ATTR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION WriteStuff ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### FUNCTION mpg123_init_decode_tables ##### -->
-<para>
-
-</para>
-
-@de: 
-@scale: 
-
-<!-- ##### MACRO MPG_MD_MONO ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GOP_LENGTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO T_SIF ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/stream.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_PARSEWAV_UNKNOWN ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/system.sgml:Title ##### -->
-system
-
-
-<!-- ##### MACRO UNPACK_FBW ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT Mpeg2Meta ##### -->
-<para>
-
-</para>
-
-@packet_length: 
-@PES_scrambling_control: 
-@PES_priority: 
-@data_alignment_indicator: 
-@copyright: 
-@original_or_copy: 
-@PTS_DTS_flags: 
-@ESCR_flag: 
-@ES_rate_flag: 
-@DSM_trick_mode_flag: 
-@additional_copy_info_flag: 
-@CRC_flag: 
-@PES_extension_flag: 
-@PES_header_data_length: 
-@PTS: 
-@DTS: 
-@ESCR_base: 
-@ESCR_extension: 
-@ES_rate: 
-@trick_mode_control: 
-
-<!-- ##### FUNCTION mpeg1mux_buffer_shrink ##### -->
-<para>
-
-</para>
-
-@mb: 
-@size: 
-
-<!-- ##### FUNCTION InterpolativeBME ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO SC_TEMP ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstV4lSrc:mode ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION initparser ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ac3dec_imdct_init ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO EXP_D25 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_AVIENCODER_MAX_VIDEO_PADS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_aviencoder_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION read_absthr ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Varargs: 
-
-<!-- ##### FUNCTION Integer2TimeCode ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@fnum: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/debug.sgml:Title ##### -->
-debug
-
-
-<!-- ##### SECTION ./tmpl/prototypes.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### TYPEDEF motion_vectors_entry ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT GstRiffChunk ##### -->
-<para>
-
-</para>
-
-@offset: 
-@id: 
-@size: 
-
-<!-- ##### MACRO STATUS_AUDIO_TIME_OUT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DVDSRC ##### -->
-<para>
-
-</para>
-
-@obj: 
-
-<!-- ##### SECTION ./tmpl/htable.sgml:Title ##### -->
-htable
-
-
-<!-- ##### FUNCTION putbits_new_empty_buffer ##### -->
-<para>
-
-</para>
-
-@pb: 
-@len: 
-
-<!-- ##### MACRO ERROR_MARKER_STRUCTURE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION RTjpeg_decompress8 ##### -->
-<para>
-
-</para>
-
-@sp: 
-@bp: 
-
-<!-- ##### FUNCTION JP0HDecimateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO MB_FORWARD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ISO_END_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/acconfig.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/bitstream.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION ReadVSHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@Returns: 
-
-<!-- ##### MACRO SYNA_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION CopyBlock ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SBLIMIT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GRAB_ATTR_VOLUME ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO STATUS_AUDIO_END ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO InBounds ##### -->
-<para>
-
-</para>
-
-@var: 
-@lo: 
-@hi: 
-@str: 
-
-<!-- ##### FUNCTION BruteMotionEstimation ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@pmem: 
-@fmem: 
-
-<!-- ##### SECTION ./tmpl/musicin.sgml:Title ##### -->
-musicin
-
-
-<!-- ##### MACRO PICTURE_LAYER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION BellCoreHInterpolateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO DecodeCBP ##### -->
-<para>
-
-</para>
-
-@gb: 
-@coded_bp: 
-
-<!-- ##### MACRO MakeStructure ##### -->
-<para>
-
-</para>
-
-@named_st: 
-
-<!-- ##### TYPEDEF D10[10] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO L_SQUANT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SIGNAL GstVideoSink::frame-displayed ##### -->
-<para>
-
-</para>
-
-@gstvideosink: the object which received the signal.
-@arg1: 
-
-<!-- ##### FUNCTION putbits_new_buffer ##### -->
-<para>
-
-</para>
-
-@pb: 
-@buffer: 
-@len: 
-
-<!-- ##### MACRO SLICE_MIN_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF BLOCK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION HPFastBME ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@rx: 
-@ry: 
-@rm: 
-@cx: 
-@cy: 
-@cm: 
-@ox: 
-@oy: 
-
-<!-- ##### FUNCTION parse_auxdata ##### -->
-<para>
-
-</para>
-
-@syncinfo: 
-@gb: 
-
-<!-- ##### FUNCTION Decode ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@huff: 
-@Returns: 
-
-<!-- ##### MACRO GTK_OVERLAY_IMAGE_MEM ##### -->
-<para>
-
-</para>
-
-@obj: 
-
-<!-- ##### MACRO FADE_HEAT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/dither.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION parse_bsi ##### -->
-<para>
-
-</para>
-
-@bsi: 
-@gb: 
-
-<!-- ##### SECTION ./tmpl/tableawd.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### ARG Mpeg2Parse:mux_rate ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO WHEREAMI ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VERSION ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO EXP_D45 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/util.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO L_FDBD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION create_sys_header ##### -->
-<para>
-
-</para>
-
-@sys_header: 
-@rate_bound: 
-@audio_bound: 
-@fixed: 
-@CSPS: 
-@audio_lock: 
-@video_lock: 
-@video_bound: 
-@stream1: 
-@buffer1_scale: 
-@buffer1_size: 
-@stream2: 
-@buffer2_scale: 
-@buffer2_size: 
-@which_streams: 
-
-<!-- ##### SECTION ./tmpl/mantissa.sgml:Title ##### -->
-mantissa
-
-
-<!-- ##### FUNCTION DecodeDC ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@LocalDHuff: 
-@Returns: 
-
-<!-- ##### MACRO DC_THREE_EIGHTHS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/proto.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/video.sgml:Title ##### -->
-video
-
-
-<!-- ##### FUNCTION TransposeMatrix ##### -->
-<para>
-
-</para>
-
-@matrix: 
-@newmatrix: 
-
-<!-- ##### SECTION ./tmpl/core.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO PACK_START ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_AVIENCODER_INITIAL ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/decoders.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO CODING_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/gtkoverlayimage.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO SLICE_LAYER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF DCTELEM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO FUTURE_LOCK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO P_DCINTRA ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION crc_init ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/gstriff.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION gst_v4lsrc_push ##### -->
-<para>
-
-</para>
-
-@src: 
-
-<!-- ##### MACRO SSLIMIT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_riff_id_to_fourcc ##### -->
-<para>
-
-</para>
-
-@id: 
-@Returns: 
-
-<!-- ##### TYPEDEF DCTBLOCK[DCTSIZE2] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO CRC16_POLYNOMIAL ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ASCII ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpg123_hsstell ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### FUNCTION gst_v4lsrc_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/dither.sgml:Title ##### -->
-dither
-
-
-<!-- ##### FUNCTION WriteBitAlloc ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION SM0HDecimateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO BITS_IN_A_BYTE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION InstallFSIob ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@fs: 
-@index: 
-
-<!-- ##### MACRO SCALE_BLOCK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO CHARBOUND ##### -->
-<para>
-
-</para>
-
-@value: 
-
-<!-- ##### FUNCTION putbits ##### -->
-<para>
-
-</para>
-
-@pb: 
-@val: 
-@n: 
-
-<!-- ##### FUNCTION gst_example_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### MACRO SCALE_RANGE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ByteAlign ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO DFLT_MOD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO BUFFER_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VCDSRC_CLASS ##### -->
-<para>
-
-</para>
-
-@klass: 
-
-<!-- ##### MACRO MPEG1MUX_BUFFER_TYPE ##### -->
-<para>
-
-</para>
-
-@mb: 
-
-<!-- ##### MACRO READ_IOB ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MBSC_LENGTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mhead.sgml:Title ##### -->
-mhead
-
-
-<!-- ##### MACRO LOGBLKSIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VCD_BYTES_PER_SECTOR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DecodeDCTDCSizeLum ##### -->
-<para>
-
-</para>
-
-@gb: 
-@macro_val: 
-
-<!-- ##### MACRO ERROR_MARKER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpg123_set_pointer ##### -->
-<para>
-
-</para>
-
-@fr: 
-@Param2: 
-
-<!-- ##### MACRO BEGIN ##### -->
-<para>
-
-</para>
-
-@name: 
-
-<!-- ##### TYPEDEF DFFT[FFT_SIZE] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO NO_VID_STREAM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DefaultIDct ##### -->
-<para>
-
-</para>
-
-@vs: 
-@o: 
-@i: 
-
-<!-- ##### MACRO MPEGVER25 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION PrintDhuff ##### -->
-<para>
-
-</para>
-
-@huff: 
-
-<!-- ##### SECTION ./tmpl/mantissa.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO P_TYPE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO EXSC ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mpeg2enc.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO SC_SNR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/htable.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO EVENT_LAYER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SYS_HEADER_START ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/musicin.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MV_FIELD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION RTjpeg_mcompress8 ##### -->
-<para>
-
-</para>
-
-@sp: 
-@bp: 
-@lmask: 
-@Returns: 
-
-<!-- ##### FUNCTION stats_print_audblk ##### -->
-<para>
-
-</para>
-
-@audblk: 
-
-<!-- ##### MACRO PSC ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPG_MD_DUAL_CHANNEL ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DCTSIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DFLT_BRT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/stream.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gtk_xvimage_redraw ##### -->
-<para>
-
-</para>
-
-@widget: 
-
-<!-- ##### SECTION ./tmpl/core.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mpg123.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION BellCoreVInterpolateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO PACKET_HEADER_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION seof ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@Returns: 
-
-<!-- ##### FUNCTION ZigzagMatrix ##### -->
-<para>
-
-</para>
-
-@imatrix: 
-@omatrix: 
-
-<!-- ##### FUNCTION decode_sanity_check_init ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SEQUENCE_SCALABLE_EXTENSION_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/stream.sgml:Title ##### -->
-stream
-
-
-<!-- ##### MACRO PADDING_STR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mrtell ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@Returns: 
-
-<!-- ##### FUNCTION MakeStat ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### SECTION ./tmpl/common.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF SBS[2][3][SCALE_BLOCK][SBLIMIT] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstWinEnc:last_frame_size ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/imdct.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/proto.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO swseek ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_PARSEAVI_HDRL ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/bit_allocate.sgml:Title ##### -->
-bit_allocate
-
-
-<!-- ##### FUNCTION WriteGOPHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### SECTION ./tmpl/ctables.sgml:Title ##### -->
-ctables
-
-
-<!-- ##### MACRO MPEG1MUX_BUFFER_SPACE ##### -->
-<para>
-
-</para>
-
-@mb: 
-
-<!-- ##### FUNCTION gst_parseavi_winloader_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### FUNCTION rb_init ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gdk_xvimage_init ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpg123_do_layer1 ##### -->
-<para>
-
-</para>
-
-@fr: 
-@Returns: 
-
-<!-- ##### FUNCTION gst_stereo_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION mpg123_do_layer2 ##### -->
-<para>
-
-</para>
-
-@fr: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/decode.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION mpg123_do_layer3 ##### -->
-<para>
-
-</para>
-
-@fr: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/mpg123.sgml:Title ##### -->
-mpg123
-
-
-<!-- ##### MACRO USER_BUF_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO TEMPSCAL_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ALIGNING ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VOL_REF_NUM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION decode_sanity_check ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/putbits.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/dither.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION UDFOpenDisc ##### -->
-<para>
-
-</para>
-
-@filename: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/decode.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION UDFReadLB ##### -->
-<para>
-
-</para>
-
-@fd: 
-@Returns: 
-
-<!-- ##### MACRO FINISHED_BLOCK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ISO11172_END ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstV4lSrc:tune ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT putbits_t ##### -->
-<para>
-
-</para>
-
-@outbfr: 
-@outbase: 
-@temp: 
-@outcnt: 
-@bytecnt: 
-@len: 
-@newlen: 
-
-<!-- ##### FUNCTION quant_weight_coeff_sum ##### -->
-<para>
-
-</para>
-
-@blk: 
-@i_quant_mat: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/tables.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/dvd_udf.sgml:Title ##### -->
-dvd_udf
-
-
-<!-- ##### FUNCTION pick_table ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Returns: 
-
-<!-- ##### MACRO BLKSIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION audio_decode8_info ##### -->
-<para>
-
-</para>
-
-@info: 
-
-<!-- ##### MACRO GST_AVIENCODER_MOVI ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_windec_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION MakeSubMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### FUNCTION gdk_xvimage_put ##### -->
-<para>
-
-</para>
-
-@window: 
-@gc: 
-@image: 
-@xsrc: 
-@ysrc: 
-@wsrc: 
-@hsrc: 
-@xdest: 
-@ydest: 
-@wdest: 
-@hdest: 
-
-<!-- ##### SECTION ./tmpl/gtkxvimage.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SIGNAL GstWinEnc::frame-encoded ##### -->
-<para>
-
-</para>
-
-@gstwinenc: the object which received the signal.
-@arg1: 
-
-<!-- ##### ARG Mp3Parse:skip ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO WINMULT ##### -->
-<para>
-
-</para>
-
-@x: 
-@coef: 
-
-<!-- ##### MACRO LAST ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO EXT_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT GdkXvImage ##### -->
-<para>
-
-</para>
-
-@type: 
-@byte_order: 
-@width: 
-@height: 
-@depth: 
-@bpp: 
-@bpl: 
-@mem: 
-
-<!-- ##### SECTION ./tmpl/ring_buffer.sgml:Title ##### -->
-ring_buffer
-
-
-<!-- ##### FUNCTION stats_print_syncinfo ##### -->
-<para>
-
-</para>
-
-@syncinfo: 
-
-<!-- ##### FUNCTION gst_xa_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### ARG GstWinEnc:compression ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DCTSIZE2 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION WriteMBHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO OK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mantissa_unpack ##### -->
-<para>
-
-</para>
-
-@bsi: 
-@audblk: 
-@gb: 
-
-<!-- ##### MACRO GST_PARSEAVI_AVIH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ReadHeaderTrailer ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### FUNCTION gst_mpg123_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### ARG Mpeg2Subt:skip ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpeg1mux_buffer_update_queued ##### -->
-<para>
-
-</para>
-
-@mb: 
-@scr: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/mpeg2enc.sgml:Title ##### -->
-mpeg2enc
-
-
-<!-- ##### MACRO PICTURE_TEMPORAL_SCALABLE_EXTENSION_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION MPEGIntraQuantize ##### -->
-<para>
-
-</para>
-
-@matrix: 
-@qptr: 
-@qfact: 
-
-<!-- ##### SECTION ./tmpl/port.sgml:Title ##### -->
-port
-
-
-<!-- ##### FUNCTION Statistics ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@RefFS: 
-@NewFS: 
-
-<!-- ##### MACRO STOP ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### VARIABLE global_prefs ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/csize.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MARKER_JUST_PTS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/proto.sgml:Title ##### -->
-proto
-
-
-<!-- ##### SECTION ./tmpl/ring_buffer.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/dvd_udf.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/gstriff.sgml:Title ##### -->
-gstriff
-
-
-<!-- ##### SECTION ./tmpl/marker.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO MAX_SNR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO PI ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF frame_params ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/stats.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPG_VER_25 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION CopyMem ##### -->
-<para>
-
-</para>
-
-@m1: 
-@m2: 
-
-<!-- ##### FUNCTION LoadFGroup ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@index: 
-
-<!-- ##### FUNCTION TimeCode2Integer ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@tc: 
-@Returns: 
-
-<!-- ##### ARG GstSpectrum:width ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPG_VER_1 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/gtkxvimage.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO MPG_VER_2 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG Videoscale:height ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION hdr_to_frps ##### -->
-<para>
-
-</para>
-
-@Param1: 
-
-<!-- ##### MACRO GRAB_ATTR_MUTE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ClearFS ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO MACROBLOCK_INTRA ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/huffman.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION OpenTableFile ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/marker.sgml:Title ##### -->
-marker
-
-
-<!-- ##### TYPEDEF D1408[1408] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_GRAY ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION audio_decode8_init ##### -->
-<para>
-
-</para>
-
-@h: 
-@framebytes_arg: 
-@reduction_code: 
-@transform_code: 
-@convert_code: 
-@freq_limit: 
-@Returns: 
-
-<!-- ##### MACRO L_IVAR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstSpindentity:control ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/dga.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION WriteBlock ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@store: 
-
-<!-- ##### USER_FUNCTION Ifunc ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### ENUM GstV4lSrcFlags ##### -->
-<para>
-
-</para>
-
-@GST_V4LSRC_OPEN: 
-
-<!-- ##### FUNCTION dither_gen ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO NOISE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/port.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO STARTCODE_FOUND ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/RTjpeg.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION MakeImage ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### FUNCTION MakeFGroup ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO MB_QUANT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_riff_get_chunk ##### -->
-<para>
-
-</para>
-
-@riff: 
-@fourcc: 
-@Returns: 
-
-<!-- ##### FUNCTION SaveMem ##### -->
-<para>
-
-</para>
-
-@filename: 
-@mem: 
-@Returns: 
-
-<!-- ##### MACRO L_BUFFERSIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DCT_COEFF_NEXT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_BGR24 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION bitstream_get ##### -->
-<para>
-
-</para>
-
-@bs: 
-@num_bits: 
-@Returns: 
-
-<!-- ##### MACRO NOISY ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MINIMUM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/ac3.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO BS_FORMAT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION WriteHdr ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Param2: 
-
-<!-- ##### ARG Videoscale:width ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO BOOLEAN ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_mpegaudio_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### MACRO PACK_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF DFFT2[FFT_SIZE/2] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SYS_HEADER_LENGTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/buffer.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION RTjpeg_compressYUV420 ##### -->
-<para>
-
-</para>
-
-@sp: 
-@bp: 
-@Returns: 
-
-<!-- ##### MACRO DFLT_SFQ ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION RTjpeg_compressYUV422 ##### -->
-<para>
-
-</para>
-
-@sp: 
-@bp: 
-@Returns: 
-
-<!-- ##### TYPEDEF JSBS[3][SCALE_BLOCK][SBLIMIT] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION head_info2 ##### -->
-<para>
-
-</para>
-
-@buf: 
-@n: 
-@h: 
-@br: 
-@Returns: 
-
-<!-- ##### FUNCTION head_info3 ##### -->
-<para>
-
-</para>
-
-@buf: 
-@n: 
-@h: 
-@br: 
-@searchForward: 
-@Returns: 
-
-<!-- ##### TYPEDEF IFFT[FFT_SIZE] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MEM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_BGR32 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MUTE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO START_BLOCK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/tables.sgml:Title ##### -->
-tables
-
-
-<!-- ##### ARG GstV4lSrc:volume ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SEQUENCE_END_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO P_FORBIDDEN ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/output.sgml:Title ##### -->
-output
-
-
-<!-- ##### FUNCTION audio_decode ##### -->
-<para>
-
-</para>
-
-@bs: 
-@pcm: 
-@Returns: 
-
-<!-- ##### FUNCTION mpg123_synth_1to1 ##### -->
-<para>
-
-</para>
-
-@fr: 
-@bandPtr: 
-@channel: 
-@out: 
-@pnt: 
-@Returns: 
-
-<!-- ##### FUNCTION gst_riff_get_nextlikely ##### -->
-<para>
-
-</para>
-
-@riff: 
-@Returns: 
-
-<!-- ##### FUNCTION II_CRC_calc ##### -->
-<para>
-
-</para>
-
-@Param1: 
-
-<!-- ##### SECTION ./tmpl/stats.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/gtkoverlayimage.sgml:Title ##### -->
-GtkOverlayImage
-
-
-<!-- ##### MACRO D_TYPE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstWinDec:avi_header ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SPATIAL_TEMPORAL_WEIGHT_CODE_FLAG ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION MakeFStore ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### FUNCTION PrintEhuff ##### -->
-<para>
-
-</para>
-
-@huff: 
-
-<!-- ##### MACRO MB_PATTERN ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_spindentity_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### MACRO P_INTERPOLATED ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/config.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO BLOCK_LAYER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ERROR_WRITE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mantissa.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### VARIABLE Clip ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/l2tables.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION SuperSubCompensate ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@fmcmatrix: 
-@bmcmatrix: 
-@imcmatrix: 
-@XIob: 
-@YIob: 
-
-<!-- ##### MACRO STREAM_UNDERFLOW ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SEQUENCE_HEADER_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO FILETYPE_ENCODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstVuMeter:volumeptr ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/buffer.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/csize.sgml:Title ##### -->
-csize
-
-
-<!-- ##### MACRO DELTA_BIT_NEW ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION bit_allocate ##### -->
-<para>
-
-</para>
-
-@fscod: 
-@bsi: 
-@audblk: 
-
-<!-- ##### SECTION ./tmpl/downmix.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION BitrateIndex ##### -->
-<para>
-
-</para>
-
-@Varargs: 
-@Varargs: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/crc.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MAC_WINDOW_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION RTjpeg_init_mcompress ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_mpeg_play_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### ARG VCDSrc:track ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/config.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/stats.sgml:Title ##### -->
-stats
-
-
-<!-- ##### SECTION ./tmpl/musicin.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO FRAME_TYPE_BFRAME ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mpeg2dec.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION MakeFileNames ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO IT_QCIF ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstMpeg2enc:frames_per_second ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_AVIENCODER_MAX_AUDIO_PADS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION WriteVSHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### FUNCTION WriteMBSHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### ARG GstVideoSink:frames_displayed ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/csize.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VCDSRC ##### -->
-<para>
-
-</para>
-
-@obj: 
-
-<!-- ##### MACRO STREAMS_BOTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ChenIDct ##### -->
-<para>
-
-</para>
-
-@x: 
-@y: 
-
-<!-- ##### FUNCTION LoadMem ##### -->
-<para>
-
-</para>
-
-@filename: 
-@width: 
-@height: 
-@omem: 
-@Returns: 
-
-<!-- ##### MACRO MPEGLAYER1 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPEGLAYER2 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPEGLAYER3 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstV4lSrc:height ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ERROR_HUFFMAN_READ ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO WRITE_MODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_windec_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### MACRO CONST_BITS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO sgetb ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/stats.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO sgetc ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION seek_sync ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### ARG GstV4lSrc:color ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/size.sgml:Title ##### -->
-size
-
-
-<!-- ##### ARG GstSmooth:tolerance ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstVideoSink:xv_enabled ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MC_FIELD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO sgetv ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION SetPointerBlock ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION bitcount ##### -->
-<para>
-
-</para>
-
-@pb: 
-@Returns: 
-
-<!-- ##### MACRO DEFAULT_QUANTIZATION ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstVuMeter:volumeptr_right ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstSynaesthesia:widget ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION dct64_486 ##### -->
-<para>
-
-</para>
-
-@a: 
-@b: 
-@samples: 
-
-<!-- ##### MACRO DFLT_LAY ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_PARSEAVI_MAX_VIDEO_PADS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ERROR_INIT_FILE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SEQSCAL_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION downmix ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Param2: 
-
-<!-- ##### MACRO SYNA_BITS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION MakeFrame ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### FUNCTION gst_spindentity_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### SECTION ./tmpl/itype.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/gstriff.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DHUFF ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/putbits.sgml:Title ##### -->
-putbits
-
-
-<!-- ##### FUNCTION gst_volume_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/downmix.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpg123_compute_tpf ##### -->
-<para>
-
-</para>
-
-@fr: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/itype.sgml:Title ##### -->
-itype
-
-
-<!-- ##### MACRO GST_RIFF_ENOTRIFF ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/crc.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/globals.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION MakeFS ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@flag: 
-
-<!-- ##### SECTION ./tmpl/decode.sgml:Title ##### -->
-decode
-
-
-<!-- ##### MACRO GRAB_ATTR_CONTRAST ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO L_BD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_smooth_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### MACRO MPG_MD_JOINT_STEREO ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO FRAME_TYPE_AUDIO ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MB_STUFFING ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO FAR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF GdkXvImageType ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstAviEncoder:audio ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/output.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO srseek ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_synaesthesia_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION VerifyFiles ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### SECTION ./tmpl/ctables.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO TABLES_PATH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_YUV420P ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/rematrix.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/bit_allocate.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/l2tables.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpeg1mux_buffer_queue ##### -->
-<para>
-
-</para>
-
-@mb: 
-@buf: 
-
-<!-- ##### MACRO CHROMA420 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/bitstream.sgml:Title ##### -->
-bitstream
-
-
-<!-- ##### MACRO CHROMA422 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO swtell ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION PrintIob ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO IFF_ID_SSND ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_win_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### MACRO LN_TO_LOG10 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION WriteSamples ##### -->
-<para>
-
-</para>
-
-@Varargs: 
-
-<!-- ##### FUNCTION rb_begin_read ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO T_X11 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/prototypes.sgml:Title ##### -->
-prototypes
-
-
-<!-- ##### FUNCTION mgetb ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/L3.sgml:Title ##### -->
-L3
-
-
-<!-- ##### FUNCTION crc_process ##### -->
-<para>
-
-</para>
-
-@data: 
-
-<!-- ##### MACRO L_IDBD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MACROBLOCK_PATTERN ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_videosink_pull ##### -->
-<para>
-
-</para>
-
-@pad: 
-@Returns: 
-
-<!-- ##### MACRO DVDSRC_CLASS ##### -->
-<para>
-
-</para>
-
-@klass: 
-
-<!-- ##### MACRO DELTA_BIT_REUSE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/qtables.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_median_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### MACRO AUSHIFT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MAX_SECTOR_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/encoder.sgml:Title ##### -->
-encoder
-
-
-<!-- ##### FUNCTION mpg123_decode_frame ##### -->
-<para>
-
-</para>
-
-@de: 
-@inbuf: 
-@inlen: 
-@outbuf: 
-@outlen: 
-@Returns: 
-
-<!-- ##### FUNCTION mpg123_rewindNbits ##### -->
-<para>
-
-</para>
-
-@fr: 
-@bits: 
-
-<!-- ##### MACRO SCALE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION PrintMatrix ##### -->
-<para>
-
-</para>
-
-@matrix: 
-
-<!-- ##### ARG GstV4lSrc:norm ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mwopen ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@filename: 
-
-<!-- ##### FUNCTION mgetv ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@n: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/marker.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstMedian:active ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION zeroflush ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO MAXFRAMESIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO AUDIO_STREAMS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO UNPACK_LFE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/parse.sgml:Title ##### -->
-parse
-
-
-<!-- ##### FUNCTION gst_parseau_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### MACRO CBANDS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION stats_print_bsi ##### -->
-<para>
-
-</para>
-
-@bsi: 
-
-<!-- ##### MACRO MB_WEIGHT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO FSTORE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/tableawd.sgml:Title ##### -->
-tableawd
-
-
-<!-- ##### MACRO SLICE_MAX_START ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_YUV422P ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IC_QUARTER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO TIMESTAMPS_PTS_DTS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION Add2Compensate ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@matrix: 
-@XIob: 
-@YIob: 
-
-<!-- ##### MACRO CHROMA444 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/parse.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION BoundIQuantizeMatrix ##### -->
-<para>
-
-</para>
-
-@matrix: 
-
-<!-- ##### SECTION ./tmpl/stamp.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO CLOCKS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION MPEGNonIntraIQuantize ##### -->
-<para>
-
-</para>
-
-@matrix: 
-@qptr: 
-@qfact: 
-
-<!-- ##### MACRO SEEK_END ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpg123_synth_1to1_486 ##### -->
-<para>
-
-</para>
-
-@fr: 
-@bandPtr: 
-@channel: 
-@out: 
-@nb_blocks: 
-@Returns: 
-
-<!-- ##### FUNCTION YUVSaveMem ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IQUANT_SCALE_POW2 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO PICTURE_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPEG2PLAY_HEIGHT ##### -->
-<para>
-
-</para>
-
-@mp: 
-
-<!-- ##### MACRO CAN_AUDIO_VOLUME ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/bit_allocate.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/debug.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### TYPEDEF IN[2][HAN_SIZE] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/common.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION RTjpeg_init_decompress ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO CREATOR_ENCODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_spectrum_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### MACRO srclose ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstSmooth:active ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DCTBITS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstMedian:filtersize ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SIGNAL GstMpeg_play::frame-decoded ##### -->
-<para>
-
-</para>
-
-@gstmpeg_play: the object which received the signal.
-@arg1: 
-
-<!-- ##### MACRO ERROR_READ ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO USER_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION Pads ##### -->
-<refsect1>
- <title>pads</title>
- <para>
-   test
- </para>
-</refsect1>
-
-
-<!-- ##### FUNCTION mpg123_huffman_count1 ##### -->
-<para>
-
-</para>
-
-@Varargs: 
-@Param2: 
-
-<!-- ##### FUNCTION gtk_xvimage_set ##### -->
-<para>
-
-</para>
-
-@image: 
-@val: 
-
-<!-- ##### FUNCTION RTjpeg_yuv420rgb ##### -->
-<para>
-
-</para>
-
-@buf: 
-@rgb: 
-
-<!-- ##### FUNCTION mrclose ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO ZERO_STUFFING_BYTE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO COPYRIGHT_EXTENSION_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO WRITE_IOB ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_parseavi_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### MACRO P_INTRA ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_mpeg2play_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### MACRO SEEK_CUR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VSSC_LENGTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ENUM DVDSrcFlags ##### -->
-<para>
-
-</para>
-
-@DVDSRC_OPEN: 
-
-<!-- ##### SECTION ./tmpl/port.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO FrameRate ##### -->
-<para>
-
-</para>
-
-@vs: 
-
-<!-- ##### MACRO DBMIN ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstVideoSink:widget ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GTK_OVERLAY_IMAGE_HEIGHT ##### -->
-<para>
-
-</para>
-
-@obj: 
-
-<!-- ##### MACRO MPEG2PLAY_WIDTH ##### -->
-<para>
-
-</para>
-
-@mp: 
-
-<!-- ##### MACRO GTK_OVERLAY_IMAGE_WIDTH ##### -->
-<para>
-
-</para>
-
-@obj: 
-
-<!-- ##### FUNCTION PrintImage ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### SECTION ./tmpl/gtkxvimage.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_xa_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### MACRO CB_FRACTION ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ClearToHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@Returns: 
-
-<!-- ##### FUNCTION mpegaudio_encode_frame ##### -->
-<para>
-
-</para>
-
-@enc: 
-@inbuf: 
-@outbuf: 
-@outlen: 
-@Returns: 
-
-<!-- ##### MACRO UDSC_LENGTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO BUFFER_TYPE_AUDIO ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/debug.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_riff_get_chunk_list ##### -->
-<para>
-
-</para>
-
-@riff: 
-@Returns: 
-
-<!-- ##### FUNCTION MakeMask ##### -->
-<para>
-
-</para>
-
-@x: 
-@y: 
-@mask: 
-@XIob: 
-
-<!-- ##### MACRO MPEG_AUDIO_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION RTjpeg_set_test ##### -->
-<para>
-
-</para>
-
-@i: 
-
-<!-- ##### MACRO MAX_U_32_NUM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPEG1MUX_BUFFER_QUEUED ##### -->
-<para>
-
-</para>
-
-@mb: 
-
-<!-- ##### MACRO I_TYPE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO FADE_STARS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO PICTURE_DISPLAY_EXTENSION_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO PI64 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MC_DMV ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO FRAME_PICTURE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/main.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpg123_huffman_decoder ##### -->
-<para>
-
-</para>
-
-@Varargs: 
-@Param2: 
-
-<!-- ##### MACRO CONTINUE_BLOCK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPEGVER1 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPEGVER2 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstV4lSrc:format ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_smoothwave_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### FUNCTION ClearMem ##### -->
-<para>
-
-</para>
-
-@m1: 
-
-<!-- ##### MACRO GROUP_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO STUFFING_BYTE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_riff_get_chunk_number ##### -->
-<para>
-
-</para>
-
-@riff: 
-@number: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/gstriff.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION XHInterpolateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### FUNCTION mpg123_head_check ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Returns: 
-
-<!-- ##### MACRO PACKAGE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/downmix.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/dga.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO QUANT_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/config.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstAviEncoder:video ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpg123_compute_bpf ##### -->
-<para>
-
-</para>
-
-@fr: 
-@Returns: 
-
-<!-- ##### ARG GstV4lSrc:input ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/acconfig.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO FFT_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/common.sgml:Title ##### -->
-common
-
-
-<!-- ##### SECTION ./tmpl/common.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/uncouple.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION YUVLoadMem ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION bitstream_open ##### -->
-<para>
-
-</para>
-
-@file: 
-@Returns: 
-
-<!-- ##### FUNCTION MpegDecodeIPBDFrame ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### FUNCTION CBPEncodeAC ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@index: 
-@matrix: 
-
-<!-- ##### MACRO MPEG1MUX_BUFFER_DATA ##### -->
-<para>
-
-</para>
-
-@mb: 
-
-<!-- ##### SECTION ./tmpl/rematrix.sgml:Title ##### -->
-rematrix
-
-
-<!-- ##### MACRO GST_PARSEWAV_CHUNK_DATA ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF SUB[2][3][SCALE_BLOCK][SBLIMIT] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_PARSEWAV_DATA ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION Bpos ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@hp: 
-@vp: 
-@h: 
-@v: 
-@Returns: 
-
-<!-- ##### FUNCTION imdct ##### -->
-<para>
-
-</para>
-
-@bsi: 
-@audblk_t: 
-@coeffs: 
-@samples: 
-
-<!-- ##### SECTION ./tmpl/crc.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION MpegEncodeIPBDFrame ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO PERMITTED_SPATIAL_TEMPORAL_WEIGHT_CLASS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DCT_ERROR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IQUANT_SCALE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/proto.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO VSEC_LENGTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION vcdsrc_get_type ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### FUNCTION gst_xing_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION InitFS ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### FUNCTION rb_end_read ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IN_SLICE_PARSE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO L_PTYPE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IC_THREE_EIGHTHS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/RTjpeg.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### TYPEDEF mb_type_entry ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/buffer.sgml:Title ##### -->
-buffer
-
-
-<!-- ##### MACRO EHUFF ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/huffman.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/dga.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_videosink_dga_init ##### -->
-<para>
-
-</para>
-
-@sink: 
-@Returns: 
-
-<!-- ##### MACRO SEQUENCE_EXTENSION_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO USER_DATA_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/l2tables.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstSynaesthesia:width ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION MakeMem ##### -->
-<para>
-
-</para>
-
-@width: 
-@height: 
-@Returns: 
-
-<!-- ##### MACRO VIDEO_MJPEG ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IT_NTSC ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO BoundValue ##### -->
-<para>
-
-</para>
-
-@var: 
-@lo: 
-@hi: 
-@str: 
-
-<!-- ##### FUNCTION gst_parseavi_winloader_handle ##### -->
-<para>
-
-</para>
-
-@parseavi: 
-@buf: 
-
-<!-- ##### FUNCTION cvt_to_wave_init ##### -->
-<para>
-
-</para>
-
-@Varargs: 
-
-<!-- ##### SECTION ./tmpl/ring_buffer.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstV4lSrc:contrast ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO T_PPM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_PARSEAVI_UNKNOWN ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/decoders.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstSmoothWave:width ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO NOISY_MIN_MNR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DecodeMotionVectors ##### -->
-<para>
-
-</para>
-
-@gb: 
-@value: 
-
-<!-- ##### MACRO ERROR_PARAMETER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION SavePartialMem ##### -->
-<para>
-
-</para>
-
-@filename: 
-@pwidth: 
-@pheight: 
-@mem: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/main.sgml:Title ##### -->
-main
-
-
-<!-- ##### FUNCTION MakeSuperMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO KB_OK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION SetCCITT ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### ARG GstV4lSrc:tuned ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION LoadPartialMem ##### -->
-<para>
-
-</para>
-
-@filename: 
-@pwidth: 
-@pheight: 
-@width: 
-@height: 
-@omem: 
-@Returns: 
-
-<!-- ##### FUNCTION ReadHeaderHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@Returns: 
-
-<!-- ##### MACRO MAXIMUM_SOURCES ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/gtkxvimage.sgml:Title ##### -->
-GtkXvImage
-
-
-<!-- ##### FUNCTION gst_vumeter_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### TYPEDEF UINT8 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO EXP_REUSE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpeg1encoder_new_picture ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@data: 
-@size: 
-@state: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/jdw.sgml:Title ##### -->
-jdw
-
-
-<!-- ##### ARG GstVuMeter:volume_right ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/tables.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION readalign ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### FUNCTION parser ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstSmooth:filtersize ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO T_YUV ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO AUDIO_STR_0 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO AFTER_PACKET_LENGTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO PATH_SEPARATOR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/video.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION uncouple ##### -->
-<para>
-
-</para>
-
-@bsi: 
-@audblk: 
-@coeffs: 
-
-<!-- ##### FUNCTION create_sector ##### -->
-<para>
-
-</para>
-
-@sector: 
-@pack: 
-@sys_header: 
-@packet_size: 
-@inputbuffer: 
-@type: 
-@buffer_scale: 
-@buffer_size: 
-@buffers: 
-@PTS: 
-@DTS: 
-@timestamps: 
-@which_streams: 
-
-<!-- ##### FUNCTION XVInterpolateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### FUNCTION WriteScale ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ERROR_HUFFMAN_ENCODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpg123_synth_1to1_pent ##### -->
-<para>
-
-</para>
-
-@bandPtr: 
-@channel: 
-@out: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/mem.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO TONE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION InstallIob ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@index: 
-
-<!-- ##### MACRO FADE_FLAME ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MB_QUANTUM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF DCTCOEF ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION CECASHInterpolateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### FUNCTION PrintFrame ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### SECTION ./tmpl/decode.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ENUM VCDSrcFlags ##### -->
-<para>
-
-</para>
-
-@VCDSRC_OPEN: 
-
-<!-- ##### SECTION ./tmpl/port.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SPATSCAL_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO T_TGA ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF sint_8 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/param.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT GdkXvImagePrivate ##### -->
-<para>
-
-</para>
-
-@image: 
-@x_shm_info: 
-@im_adaptor: 
-@im_port: 
-@im_format: 
-
-<!-- ##### SECTION ./tmpl/ctables.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/util.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPEG2PLAY_FORMAT ##### -->
-<para>
-
-</para>
-
-@mp: 
-
-<!-- ##### FUNCTION CBPDecodeAC ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@index: 
-@matrix: 
-
-<!-- ##### FUNCTION mpeg1encoder_new_encoder ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### FUNCTION gst_smooth_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### TYPEDEF uint_16 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/prototypes.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO L_BVAR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_PARSEAVI_STRH_AUDS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION read_bit_alloc ##### -->
-<para>
-
-</para>
-
-@Varargs: 
-@Param2: 
-@Returns: 
-
-<!-- ##### MACRO BUFFER_TYPE_VIDEO ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/huffman.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DVD_VIDEO_LB_LEN ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO RUN_SHIFT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO BLOCKWIDTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/uncouple.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ILBOUND ##### -->
-<para>
-
-</para>
-
-@ptr: 
-@index: 
-@value: 
-
-<!-- ##### MACRO MARKER_PTS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION parse_syncinfo ##### -->
-<para>
-
-</para>
-
-@syncinfo: 
-@gb: 
-
-<!-- ##### FUNCTION memcheck ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Varargs: 
-@Varargs: 
-@Returns: 
-
-<!-- ##### MACRO srtell ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION IZigzagMatrix ##### -->
-<para>
-
-</para>
-
-@imatrix: 
-@omatrix: 
-
-<!-- ##### FUNCTION SM0HInterpolateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### ARG GstVolume:volume ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DC_ONE_EIGHTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION JP0VDecimateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/L3.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/vlc.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MAXIMUM_FGROUP ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mropen ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@filename: 
-
-<!-- ##### VARIABLE mpg123_conv16to8 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IT_CIF ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_jpegdec_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### TYPEDEF uint_32 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstSmoothWave:widget ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SIXTYFOUR_BIT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION extended_to_double ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Param2: 
-
-<!-- ##### SECTION ./tmpl/acconfig.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO RESERVED_BYTE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SEQ_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/dct.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/stamp.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/downmix.sgml:Title ##### -->
-downmix
-
-
-<!-- ##### SECTION ./tmpl/core.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO swclose ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpeg2play_new_decoder ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO MPEG2_PACKHEAD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_PARSEAVI_MAX_AUDIO_PADS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO P_PREDICTED ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO PACKET_START ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO L_QOFFS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstV4lSrc:mute ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MB_ESCAPE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO LITTLE_ENDIAN_ARCHITECTURE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstVuMeter:volume_left ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION exponent_unpack ##### -->
-<para>
-
-</para>
-
-@bsi: 
-@audblk: 
-@coeffs: 
-
-<!-- ##### FUNCTION WriteFS ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO RING_BUF_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mwclose ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO SLICE_MIN_START ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstVideoSink:frame_time ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DecodeDCTCoeffNext ##### -->
-<para>
-
-</para>
-
-@gb: 
-@runval: 
-@levelval: 
-
-<!-- ##### MACRO VIDEO_RGB15_BE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION RTjpeg_yuv422rgb ##### -->
-<para>
-
-</para>
-
-@buf: 
-@rgb: 
-
-<!-- ##### SECTION ./tmpl/size.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION CECASVInterpolateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO ALL_LAYERS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstV4lSrc:width ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION RTjpeg_mcompress ##### -->
-<para>
-
-</para>
-
-@sp: 
-@bp: 
-@lmask: 
-@cmask: 
-@Returns: 
-
-<!-- ##### MACRO BINARY ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DVD_UDF_VERSION ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/stamp.sgml:Title ##### -->
-stamp
-
-
-<!-- ##### MACRO DecodeMBTypeB ##### -->
-<para>
-
-</para>
-
-@gb: 
-@quant: 
-@motion_fwd: 
-@motion_bwd: 
-@pat: 
-@intra: 
-
-<!-- ##### SECTION ./tmpl/dct.sgml:Title ##### -->
-dct
-
-
-<!-- ##### FUNCTION stats_print_banner ##### -->
-<para>
-
-</para>
-
-@syncinfo: 
-@bsi: 
-
-<!-- ##### MACRO GTK_OVERLAY_IMAGE_DEPTH ##### -->
-<para>
-
-</para>
-
-@obj: 
-
-<!-- ##### MACRO UNPACK_CPL ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DecodeMBTypeI ##### -->
-<para>
-
-</para>
-
-@gb: 
-@quant: 
-@motion_fwd: 
-@motion_bwd: 
-@pat: 
-@intra: 
-
-<!-- ##### MACRO GTK_OVERLAY_IMAGE_PIXEL_SIZE ##### -->
-<para>
-
-</para>
-
-@obj: 
-
-<!-- ##### FUNCTION gst_median_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### FUNCTION SM0VDecimateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/output.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/buffer.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DecodeMBTypeP ##### -->
-<para>
-
-</para>
-
-@gb: 
-@quant: 
-@motion_fwd: 
-@motion_bwd: 
-@pat: 
-@intra: 
-
-<!-- ##### FUNCTION CreateFrameSizes ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO FRAME_TYPE_PFRAME ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IFF_ID_COMM ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION parse_audblk ##### -->
-<para>
-
-</para>
-
-@bsi: 
-@audblk: 
-@gb: 
-
-<!-- ##### MACRO PACK_HEADER_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/tables.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/huffman.sgml:Title ##### -->
-huffman
-
-
-<!-- ##### FUNCTION RTjpeg_init_compress ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/param.sgml:Title ##### -->
-param
-
-
-<!-- ##### MACRO GLOBAL ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO STEREO ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/system.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/l2tables.sgml:Title ##### -->
-l2tables
-
-
-<!-- ##### MACRO IOBUF ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION SetMem ##### -->
-<para>
-
-</para>
-
-@value: 
-@m1: 
-
-<!-- ##### MACRO SLICE_MAX_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION SonyHInterpolateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### TYPEDEF uint_64 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/rematrix.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ERROR_BOUNDS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO L_MQUANT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO TOP_FIELD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION I_CRC_calc ##### -->
-<para>
-
-</para>
-
-@Param1: 
-
-<!-- ##### FUNCTION SM0VInterpolateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### FUNCTION MakeBlock ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### FUNCTION NumericQ ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Returns: 
-
-<!-- ##### MACRO MPEG1MUX_BUFFER_FIRST_TIMECODE ##### -->
-<para>
-
-</para>
-
-@mb: 
-
-<!-- ##### SECTION ./tmpl/grab.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF SAMPLEINT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/vlc.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_mpeg1encoder_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### SECTION ./tmpl/main.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_PARSEWAV_CHUNK_FMT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MC_16X8 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_LUT2 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_LUT4 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION BoundIntegerMatrix ##### -->
-<para>
-
-</para>
-
-@matrix: 
-
-<!-- ##### SECTION ./tmpl/putbits.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF vFunc() ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO TYPE_FORMAT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/stamp.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO FADE_WAVE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO BLOCKHEIGHT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION set_mac_file_attr ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mpg123.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO LEVEL_MASK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ASM_X86_OLD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IMAGE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DISPLAY_LOCK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ReadFS ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### SECTION ./tmpl/mem.sgml:Title ##### -->
-mem
-
-
-<!-- ##### FUNCTION WriteVEHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### ARG GstSynaesthesia:height ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/grab.sgml:Title ##### -->
-grab
-
-
-<!-- ##### FUNCTION PrintTable ##### -->
-<para>
-
-</para>
-
-@table: 
-
-<!-- ##### SECTION ./tmpl/encoder.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GRAB_ATTR_MODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION i_audio_decode ##### -->
-<para>
-
-</para>
-
-@bs: 
-@pcm: 
-@Returns: 
-
-<!-- ##### FUNCTION alignbits ##### -->
-<para>
-
-</para>
-
-@pb: 
-
-<!-- ##### MACRO PAST_LOCK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/parse.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT GstParseWavFormat ##### -->
-<para>
-
-</para>
-
-@wFormatTag: 
-@wChannels: 
-@dwSamplesPerSec: 
-@dwAvgBytesPerSec: 
-@wBlockAlign: 
-@wBitsPerSample: 
-
-<!-- ##### MACRO DecodeDCTDCSizeChrom ##### -->
-<para>
-
-</para>
-
-@gb: 
-@macro_val: 
-
-<!-- ##### MACRO FLOAT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION cvt_to_wave ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Param2: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/tableawd.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mantissa.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/decoders.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION gtk_xvimage_new ##### -->
-<para>
-
-</para>
-
-@val: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/grab.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ERROR_PREMATURE_EOF ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION rb_begin_write ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO LEVEL_SHIFT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ERROR_MEMORY ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_parseau_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/mem.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO WINBITS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF mb_addr_inc_entry ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ParityMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO SKIP_TO_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPG_LAYER_1 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GRAB_ATTR_HUE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPG_LAYER_2 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_videosink_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### MACRO UDSC ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MPG_LAYER_3 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO gst_cobin_destroy ##### -->
-<para>
-
-</para>
-
-@cobin: 
-
-<!-- ##### FUNCTION gst_videosink_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### MACRO COEFFSUM_SCALE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/param.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/ring_buffer.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION ReadBlock ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@store: 
-
-<!-- ##### MACRO MACROBLOCK_QUANT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG VCDSrc:location ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpg123_decode_header ##### -->
-<para>
-
-</para>
-
-@fr: 
-@header: 
-@Returns: 
-
-<!-- ##### MACRO DFLT_EMP ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/video.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO T_Y_U_V ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF DSBL[SBLIMIT] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO NO_STARTCODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO L_BDBD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DCT_COEFF_FIRST ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SC_DP ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_smoothwave_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### MACRO IC_ONE_EIGHTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION RTjpeg_yuvrgb8 ##### -->
-<para>
-
-</para>
-
-@buf: 
-@rgb: 
-
-<!-- ##### MACRO IUBOUND ##### -->
-<para>
-
-</para>
-
-@ptr: 
-@index: 
-@value: 
-
-<!-- ##### ARG GstWinEnc:bitrate ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/RTjpeg.sgml:Title ##### -->
-RTjpeg
-
-
-<!-- ##### SECTION ./tmpl/htable.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION new_ext ##### -->
-<para>
-
-</para>
-
-@filename: 
-@extname: 
-@Returns: 
-
-<!-- ##### MACRO VIDEO_RGB16_BE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_riff_fourcc_to_id ##### -->
-<para>
-
-</para>
-
-@fourcc: 
-@Returns: 
-
-<!-- ##### FUNCTION gst_jpegdec_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION SonyVInterpolateMem ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### FUNCTION gtk_overlay_image_resize ##### -->
-<para>
-
-</para>
-
-@widget: 
-@width: 
-@height: 
-
-<!-- ##### MACRO END_OF_BLOCK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/globals.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### FUNCTION audio_decode8 ##### -->
-<para>
-
-</para>
-
-@bs: 
-@pcmbuf: 
-@Returns: 
-
-<!-- ##### MACRO MARKER_NO_TIMESTAMPS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ClearMatrix ##### -->
-<para>
-
-</para>
-
-@matrix: 
-
-<!-- ##### FUNCTION WritePictureHeader ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO STATUS_VIDEO_END ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mem.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_stereo_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### FUNCTION putbits_init ##### -->
-<para>
-
-</para>
-
-@pb: 
-
-<!-- ##### FUNCTION mwseek ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@distance: 
-
-<!-- ##### SECTION ./tmpl/prototypes.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GST_PARSEAVI_MOVI ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstWinEnc:avi_header ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/core.sgml:Title ##### -->
-core
-
-
-<!-- ##### FUNCTION double_to_extended ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Param2: 
-
-<!-- ##### FUNCTION dct64 ##### -->
-<para>
-
-</para>
-
-@dt: 
-@out0: 
-@out1: 
-@samples: 
-
-<!-- ##### SECTION ./tmpl/vlc.sgml:Title ##### -->
-vlc
-
-
-<!-- ##### MACRO ERROR_NONE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpg123_synth_1to1_mono ##### -->
-<para>
-
-</para>
-
-@fr: 
-@bandPtr: 
-@samples: 
-@pnt: 
-@Returns: 
-
-<!-- ##### ARG GstStereo:active ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO LITTLE_ENDIAN ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mpeg2dec.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/ac3.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MB_CLASS4 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SKIPPED_PICTURE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SEQ_END_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/exponent.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION Encode ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@val: 
-@huff: 
-@Returns: 
-
-<!-- ##### FUNCTION convertRGBtoYUV ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@source: 
-@dest: 
-
-<!-- ##### FUNCTION gst_mpeg2enc_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION gst_cobin_iterate ##### -->
-<para>
-
-</para>
-
-@cobin: 
-
-<!-- ##### MACRO PICTURE_CODING_EXTENSION_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO NUM_MASK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/ac3.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gtk_overlay_image_new ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/qtables.sgml:Title ##### -->
-qtables
-
-
-<!-- ##### MACRO RUN_MASK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO BIG_ENDIAN_ARCHITECTURE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION initme ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO HUFFMAN_ESCAPE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/dvd_udf.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DCTSATURATE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/dvd_udf.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/debug.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GRAB_ATTR_BRIGHT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO AIX ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION MpegDecodeSequence ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-
-<!-- ##### MACRO L_DVAR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/gdkxvimage.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/mpeg2dec.sgml:Title ##### -->
-mpeg2dec
-
-
-<!-- ##### FUNCTION gst_xing_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### SECTION ./tmpl/dct.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF ID[4] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION RTjpeg_decompressYUV420 ##### -->
-<para>
-
-</para>
-
-@sp: 
-@bp: 
-
-<!-- ##### FUNCTION mpg123_synth_ntom_set_step ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Param2: 
-
-<!-- ##### FUNCTION RTjpeg_decompressYUV422 ##### -->
-<para>
-
-</para>
-
-@sp: 
-@bp: 
-
-<!-- ##### FUNCTION MakeDHUFF ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO REGULAR_PARSE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/imdct.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/ctables.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF TimeStamp ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IN_GOP_PARSE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT GstRiff ##### -->
-<para>
-
-</para>
-
-@form: 
-@chunks: 
-@state: 
-@curoffset: 
-@nextlikely: 
-
-<!-- ##### FUNCTION mpg123_init_layer1 ##### -->
-<para>
-
-</para>
-
-@Param1: 
-
-<!-- ##### MACRO MPG_MD_STEREO ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO FRAME ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION mpg123_init_layer3 ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Varargs: 
-
-<!-- ##### FUNCTION FreeMem ##### -->
-<para>
-
-</para>
-
-@mem: 
-
-<!-- ##### FUNCTION RTjpeg_init_Q ##### -->
-<para>
-
-</para>
-
-@Q: 
-
-<!-- ##### MACRO BUFFERSIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstVideoSink:height ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/util.sgml:Title ##### -->
-util
-
-
-<!-- ##### MACRO EXSC_LENGTH ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO UMASK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF dct_dc_size_entry ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO RATE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION update_CRC ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Param2: 
-@Param3: 
-
-<!-- ##### MACRO VSEC ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/getvlc.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### STRUCT Mpeg1Stream ##### -->
-<para>
-
-</para>
-
-@stream_id: 
-@STD_buffer_bound_scale: 
-@STD_buffer_size_bound: 
-
-<!-- ##### MACRO MB_INTRA ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO HAN_SIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/rematrix.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### MACRO LAST_SCR_BYTE_IN_PACK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GLOBAL_GAIN_SCALE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_RGB15_LE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF D2SBL[2][SBLIMIT] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstVideoSink:width ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SC_SPAT ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO L_VAROR ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/encoder.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/size.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_riff_new ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### SECTION ./tmpl/imdct.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/L3.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION aiff_seek_to_sound_data ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Returns: 
-
-<!-- ##### MACRO SKIP_PICTURE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION cvt_to_wave_test ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### FUNCTION gst_mpeg1encoder_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### FUNCTION gst_mpeg2enc_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### MACRO NO_LAYER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION ChenDct ##### -->
-<para>
-
-</para>
-
-@x: 
-@y: 
-
-<!-- ##### FUNCTION mpeg2play_new_buffer ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@inbuf: 
-@inlen: 
-@first: 
-@Returns: 
-
-<!-- ##### MACRO B_TYPE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION i_audio_decode_info ##### -->
-<para>
-
-</para>
-
-@info: 
-
-<!-- ##### FUNCTION gst_parsewav_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### MACRO swopen ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SEQ_START_CODE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO IN_PICTURE_PARSE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/bitstream.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GTK_OVERLAY_IMAGE_BYTE_ORDER ##### -->
-<para>
-
-</para>
-
-@obj: 
-
-<!-- ##### MACRO SKIP_JUNK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF INT16 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MACROBLOCK_MOTION_BACKWARD ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DELTA_BIT_RESERVED ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/tableawd.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_parseavi_get_audio_srcpad ##### -->
-<para>
-
-</para>
-
-@parseavi: 
-@pad_nr: 
-@strf: 
-@Returns: 
-
-<!-- ##### MACRO FIRST_BLOCK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO LXMIN ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/jdw.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/htable.sgml:Short_Description ##### -->
-
-
-
-<!-- ##### SECTION ./tmpl/dga.sgml:Title ##### -->
-dga
-
-
-<!-- ##### MACRO STREAMS_AUDIO ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/encoder.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF WINCOEF ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/putbits.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO PANSCAN_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MV_FRAME ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO BLOCKSIZE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ERRC ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO ESCAPE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION aiff_read_headers ##### -->
-<para>
-
-</para>
-
-@Param1: 
-@Param2: 
-@Returns: 
-
-<!-- ##### ARG GstV4lSrc:hue ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gdk_xvimage_new ##### -->
-<para>
-
-</para>
-
-@type: 
-@width: 
-@height: 
-@Returns: 
-
-<!-- ##### MACRO SEQUENCE_LAYER ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO MBSC ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO L_BUFFERCONTENTS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO DFLT_PSY ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION audio_decode_info ##### -->
-<para>
-
-</para>
-
-@info: 
-
-<!-- ##### ARG GstVuMeter:volume ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/gtkoverlayimage.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GstWinEnc:quality ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO PICTURE_SPATIAL_SCALABLE_EXTENSION_ID ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO TALK ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO VIDEO_STREAMS ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF INT32 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT Mpeg1MuxBuffer ##### -->
-<para>
-
-</para>
-
-@buffer: 
-@length: 
-@base: 
-@scan_pos: 
-@last_pos: 
-@current_start: 
-@buffer_type: 
-@stream_id: 
-@new_frame: 
-@next_frame_time: 
-
-<!-- ##### FUNCTION gst_jpeg_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### TYPEDEF D640[640] ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/bit_allocate.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gtk_xvimage_get ##### -->
-<para>
-
-</para>
-
-@image: 
-@val: 
-
-<!-- ##### MACRO DELTA_BIT_NONE ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION SubCompensate ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@matrix: 
-@XIob: 
-
-<!-- ##### SECTION ./tmpl/qtables.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION rematrix ##### -->
-<para>
-
-</para>
-
-@audblk: 
-@coeffs: 
-
-<!-- ##### FUNCTION gst_aviencoder_make_video_header ##### -->
-<para>
-
-</para>
-
-@codec: 
-@width: 
-@height: 
-@planes: 
-@bit_cnt: 
-@Returns: 
-
-<!-- ##### FUNCTION mpg123_init_conv16to8_table ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION crc_validate ##### -->
-<para>
-
-</para>
-
-@Returns: 
-
-<!-- ##### MACRO ZIG_ZAG ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO SLICE_START_CODE_MAX ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### TYPEDEF iFunc() ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION gst_synaesthesia_chain ##### -->
-<para>
-
-</para>
-
-@pad: 
-@buf: 
-
-<!-- ##### FUNCTION gst_mpg123_new ##### -->
-<para>
-
-</para>
-
-@name: 
-@Returns: 
-
-<!-- ##### ARG System_Encode:audio ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### FUNCTION CopyCFS2FS ##### -->
-<para>
-
-</para>
-
-@vid_stream: 
-@fs: 
-
diff --git a/docs/plugins/tmpl/gstspectrum.sgml b/docs/plugins/tmpl/gstspectrum.sgml
deleted file mode 100644 (file)
index a3dc5d3..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstSpectrum
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstv4lsrc.sgml b/docs/plugins/tmpl/gstv4lsrc.sgml
deleted file mode 100644 (file)
index ba14a4f..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstV4lSrc
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstwincodec.sgml b/docs/plugins/tmpl/gstwincodec.sgml
deleted file mode 100644 (file)
index 8b34fd6..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstWin
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstwindec.sgml b/docs/plugins/tmpl/gstwindec.sgml
deleted file mode 100644 (file)
index e4f1e66..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstWinDec
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstwinenc.sgml b/docs/plugins/tmpl/gstwinenc.sgml
deleted file mode 100644 (file)
index 8e8fe36..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstWinEnc
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstxa.sgml b/docs/plugins/tmpl/gstxa.sgml
deleted file mode 100644 (file)
index 259ac0a..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstXa
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/gstxing.sgml b/docs/plugins/tmpl/gstxing.sgml
deleted file mode 100644 (file)
index cf9d214..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstXing
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/median.sgml b/docs/plugins/tmpl/median.sgml
deleted file mode 100644 (file)
index 1408d68..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstMedian
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/mp1videoparse.sgml b/docs/plugins/tmpl/mp1videoparse.sgml
deleted file mode 100644 (file)
index 4e79b5c..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-Mp1VideoParse
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/mp2videoparse.sgml b/docs/plugins/tmpl/mp2videoparse.sgml
deleted file mode 100644 (file)
index fd9d6a8..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-Mp2VideoParse
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/mp3parse.sgml b/docs/plugins/tmpl/mp3parse.sgml
deleted file mode 100644 (file)
index 07d6078..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-Mp3Parse
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/mpeg1parse.sgml b/docs/plugins/tmpl/mpeg1parse.sgml
deleted file mode 100644 (file)
index de8497d..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-Mpeg1Parse
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/mpeg2parse.sgml b/docs/plugins/tmpl/mpeg2parse.sgml
deleted file mode 100644 (file)
index a2533cc..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-Mpeg2Parse
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/mpeg2subt.sgml b/docs/plugins/tmpl/mpeg2subt.sgml
deleted file mode 100644 (file)
index 1ce7894..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-Mpeg2Subt
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/rtjpegdec.sgml b/docs/plugins/tmpl/rtjpegdec.sgml
deleted file mode 100644 (file)
index 219eaa8..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-RTJpegDec
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/rtjpegenc.sgml b/docs/plugins/tmpl/rtjpegenc.sgml
deleted file mode 100644 (file)
index 6b40115..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-RTJpegEnc
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/smooth.sgml b/docs/plugins/tmpl/smooth.sgml
deleted file mode 100644 (file)
index 0828169..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstSmooth
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/smoothwave.sgml b/docs/plugins/tmpl/smoothwave.sgml
deleted file mode 100644 (file)
index be5c975..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstSmoothWave
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/spindentity.sgml b/docs/plugins/tmpl/spindentity.sgml
deleted file mode 100644 (file)
index 58c174a..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstSpindentity
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/stereo.sgml b/docs/plugins/tmpl/stereo.sgml
deleted file mode 100644 (file)
index 9f1ed2f..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstStereo
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/synaesthesia.sgml b/docs/plugins/tmpl/synaesthesia.sgml
deleted file mode 100644 (file)
index 40f3447..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstSynaesthesia
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/system_encode.sgml b/docs/plugins/tmpl/system_encode.sgml
deleted file mode 100644 (file)
index e342229..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-System_Encode
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/vcdsrc.sgml b/docs/plugins/tmpl/vcdsrc.sgml
deleted file mode 100644 (file)
index b00fc82..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-VCDSrc
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/videoscale.sgml b/docs/plugins/tmpl/videoscale.sgml
deleted file mode 100644 (file)
index f7a0f27..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-Videoscale
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/videosink.sgml b/docs/plugins/tmpl/videosink.sgml
deleted file mode 100644 (file)
index 010558b..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstVideoSink
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/volume.sgml b/docs/plugins/tmpl/volume.sgml
deleted file mode 100644 (file)
index cff4b42..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstVolume
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/vorbisdec.sgml b/docs/plugins/tmpl/vorbisdec.sgml
deleted file mode 100644 (file)
index 37f99b0..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-VorbisDec
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/vorbisenc.sgml b/docs/plugins/tmpl/vorbisenc.sgml
deleted file mode 100644 (file)
index 358d634..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-VorbisEnc
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
diff --git a/docs/plugins/tmpl/vumeter.sgml b/docs/plugins/tmpl/vumeter.sgml
deleted file mode 100644 (file)
index 3816526..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<!-- ##### SECTION Title ##### -->
-GstVuMeter
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-